Built motion from commit 7158bc59.|2.5.42
[motion2.git] / server / api / intZendeskField / intZendeskField.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 _0x752f=['then','error','stack','name','send','index','ZendeskField','rawAttributes','type','key','model','map','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','limit','order','sort','where','pick','merge','VIRTUAL','filter','options','includeAll','include','findAll','rows','params','catch','create','body','destroy','eml-format','fast-json-patch','request-promise','moment','bluebird','mustache','sox','ejs','fs-extra','lodash','squel','crypto','jsforce','querystring','../../components/parsers/qs','../../config/license/hardware','api','../../config/utils','../../config/license/util','sendStatus','end','status','offset','count','set','json','apply','save'];(function(_0x510354,_0x56cf30){var _0x1ab274=function(_0x455f7c){while(--_0x455f7c){_0x510354['push'](_0x510354['shift']());}};_0x1ab274(++_0x56cf30);}(_0x752f,0x6a));var _0xf752=function(_0x27b92a,_0x4e9aa5){_0x27b92a=_0x27b92a-0x0;var _0x2c5e24=_0x752f[_0x27b92a];return _0x2c5e24;};'use strict';var emlformat=require(_0xf752('0x0'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0xf752('0x1'));var rp=require(_0xf752('0x2'));var moment=require(_0xf752('0x3'));var BPromise=require(_0xf752('0x4'));var Mustache=require(_0xf752('0x5'));var util=require('util');var path=require('path');var sox=require(_0xf752('0x6'));var csv=require('to-csv');var ejs=require(_0xf752('0x7'));var fs=require('fs');var fs_extra=require(_0xf752('0x8'));var _=require(_0xf752('0x9'));var squel=require(_0xf752('0xa'));var crypto=require(_0xf752('0xb'));var jsforce=require(_0xf752('0xc'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0xf752('0xd'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0xf752('0xe'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xf752('0xf'));var logger=require('../../config/logger')(_0xf752('0x10'));var utils=require(_0xf752('0x11'));var config=require('../../config/environment');var licenseUtil=require(_0xf752('0x12'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x582871,_0x5df0c1){_0x5df0c1=_0x5df0c1||0xcc;return function(_0xae3b55){if(_0xae3b55){return _0x582871[_0xf752('0x13')](_0x5df0c1);}return _0x582871['status'](_0x5df0c1)[_0xf752('0x14')]();};}function respondWithResult(_0x4ba961,_0x4e6f86){_0x4e6f86=_0x4e6f86||0xc8;return function(_0x346f94){if(_0x346f94){return _0x4ba961[_0xf752('0x15')](_0x4e6f86)['json'](_0x346f94);}};}function respondWithFilteredResult(_0x22ba53,_0x27df27){return function(_0x27b236){if(_0x27b236){var _0x8420de=typeof _0x27df27[_0xf752('0x16')]==='undefined'&&typeof _0x27df27['limit']==='undefined';var _0x312dec=_0x27b236[_0xf752('0x17')];var _0x222d8e=_0x8420de?0x0:_0x27df27[_0xf752('0x16')];var _0x26e3bc=_0x8420de?_0x27b236[_0xf752('0x17')]:_0x27df27['offset']+_0x27df27['limit'];var _0x59f14c;if(_0x26e3bc>=_0x312dec){_0x26e3bc=_0x312dec;_0x59f14c=0xc8;}else{_0x59f14c=0xce;}_0x22ba53['status'](_0x59f14c);return _0x22ba53[_0xf752('0x18')]('Content-Range',_0x222d8e+'-'+_0x26e3bc+'/'+_0x312dec)[_0xf752('0x19')](_0x27b236);}return null;};}function patchUpdates(_0x1a6456){return function(_0x50d3f7){try{jsonpatch[_0xf752('0x1a')](_0x50d3f7,_0x1a6456,!![]);}catch(_0x21c8b5){return BPromise['reject'](_0x21c8b5);}return _0x50d3f7[_0xf752('0x1b')]();};}function saveUpdates(_0x3abc43,_0x4772c4){return function(_0x2f1564){if(_0x2f1564){return _0x2f1564['update'](_0x3abc43)[_0xf752('0x1c')](function(_0x539832){return _0x539832;});}return null;};}function removeEntity(_0x79aae2,_0x24bad3){return function(_0x38f743){if(_0x38f743){return _0x38f743['destroy']()[_0xf752('0x1c')](function(){_0x79aae2[_0xf752('0x15')](0xcc)[_0xf752('0x14')]();});}};}function handleEntityNotFound(_0x2b37f3,_0x18f600){return function(_0x3349f3){if(!_0x3349f3){_0x2b37f3[_0xf752('0x13')](0x194);}return _0x3349f3;};}function handleError(_0x47fbe1,_0x4be999){_0x4be999=_0x4be999||0x1f4;return function(_0x4a7059){logger[_0xf752('0x1d')](_0x4a7059[_0xf752('0x1e')]);if(_0x4a7059['name']){delete _0x4a7059[_0xf752('0x1f')];}_0x47fbe1['status'](_0x4be999)[_0xf752('0x20')](_0x4a7059);};}exports[_0xf752('0x21')]=function(_0x45085c,_0x501e61){var _0x1fbd02={},_0x4a3550={},_0x1f5992={'count':0x0,'rows':[]};var _0x39a4a2=_['map'](db[_0xf752('0x22')][_0xf752('0x23')],function(_0x387fae){return{'name':_0x387fae['fieldName'],'type':_0x387fae[_0xf752('0x24')][_0xf752('0x25')]};});_0x4a3550[_0xf752('0x26')]=_[_0xf752('0x27')](_0x39a4a2,'name');_0x4a3550[_0xf752('0x28')]=_[_0xf752('0x29')](_0x45085c[_0xf752('0x28')]);_0x4a3550[_0xf752('0x2a')]=_[_0xf752('0x2b')](_0x4a3550[_0xf752('0x26')],_0x4a3550[_0xf752('0x28')]);_0x1fbd02[_0xf752('0x2c')]=_['intersection'](_0x4a3550['model'],qs[_0xf752('0x2d')](_0x45085c[_0xf752('0x28')]['fields']));_0x1fbd02[_0xf752('0x2c')]=_0x1fbd02[_0xf752('0x2c')][_0xf752('0x2e')]?_0x1fbd02[_0xf752('0x2c')]:_0x4a3550['model'];if(!_0x45085c[_0xf752('0x28')][_0xf752('0x2f')](_0xf752('0x30'))){_0x1fbd02[_0xf752('0x31')]=qs[_0xf752('0x31')](_0x45085c[_0xf752('0x28')][_0xf752('0x31')]);_0x1fbd02[_0xf752('0x16')]=qs['offset'](_0x45085c[_0xf752('0x28')][_0xf752('0x16')]);}_0x1fbd02[_0xf752('0x32')]=qs['sort'](_0x45085c['query'][_0xf752('0x33')]);_0x1fbd02[_0xf752('0x34')]=qs[_0xf752('0x2a')](_[_0xf752('0x35')](_0x45085c['query'],_0x4a3550[_0xf752('0x2a')]),_0x39a4a2);if(_0x45085c[_0xf752('0x28')]['filter']){_0x1fbd02[_0xf752('0x34')]=_[_0xf752('0x36')](_0x1fbd02[_0xf752('0x34')],{'$or':_['map'](_0x39a4a2,function(_0x4ceab4){if(_0x4ceab4[_0xf752('0x24')]!==_0xf752('0x37')){var _0x33a90e={};_0x33a90e[_0x4ceab4[_0xf752('0x1f')]]={'$like':'%'+_0x45085c[_0xf752('0x28')][_0xf752('0x38')]+'%'};return _0x33a90e;}})});}_0x1fbd02=_['merge']({},_0x1fbd02,_0x45085c[_0xf752('0x39')]);var _0x2e9101={'where':_0x1fbd02['where']};return db[_0xf752('0x22')][_0xf752('0x17')](_0x2e9101)[_0xf752('0x1c')](function(_0x4f978f){_0x1f5992[_0xf752('0x17')]=_0x4f978f;if(_0x45085c[_0xf752('0x28')][_0xf752('0x3a')]){_0x1fbd02[_0xf752('0x3b')]=[{'all':!![]}];}return db[_0xf752('0x22')][_0xf752('0x3c')](_0x1fbd02);})[_0xf752('0x1c')](function(_0x18179e){_0x1f5992[_0xf752('0x3d')]=_0x18179e;return _0x1f5992;})[_0xf752('0x1c')](respondWithFilteredResult(_0x501e61,_0x1fbd02))['catch'](handleError(_0x501e61,null));};exports['show']=function(_0x4c8e23,_0x450b15){var _0xdfc0dd={'raw':!![],'where':{'id':_0x4c8e23[_0xf752('0x3e')]['id']}},_0x7c5b3c={};_0x7c5b3c['model']=_['keys'](db['ZendeskField']['rawAttributes']);_0x7c5b3c['query']=_[_0xf752('0x29')](_0x4c8e23['query']);_0x7c5b3c['filters']=_[_0xf752('0x2b')](_0x7c5b3c[_0xf752('0x26')],_0x7c5b3c[_0xf752('0x28')]);_0xdfc0dd[_0xf752('0x2c')]=_[_0xf752('0x2b')](_0x7c5b3c[_0xf752('0x26')],qs[_0xf752('0x2d')](_0x4c8e23[_0xf752('0x28')]['fields']));_0xdfc0dd[_0xf752('0x2c')]=_0xdfc0dd[_0xf752('0x2c')][_0xf752('0x2e')]?_0xdfc0dd[_0xf752('0x2c')]:_0x7c5b3c[_0xf752('0x26')];if(_0x4c8e23[_0xf752('0x28')][_0xf752('0x3a')]){_0xdfc0dd[_0xf752('0x3b')]=[{'all':!![]}];}_0xdfc0dd=_[_0xf752('0x36')]({},_0xdfc0dd,_0x4c8e23['options']);return db['ZendeskField']['find'](_0xdfc0dd)[_0xf752('0x1c')](handleEntityNotFound(_0x450b15,null))[_0xf752('0x1c')](respondWithResult(_0x450b15,null))[_0xf752('0x3f')](handleError(_0x450b15,null));};exports['create']=function(_0x5cd54a,_0x483f3e){return db[_0xf752('0x22')][_0xf752('0x40')](_0x5cd54a[_0xf752('0x41')],{})['then'](respondWithResult(_0x483f3e,0xc9))[_0xf752('0x3f')](handleError(_0x483f3e,null));};exports['update']=function(_0x33c462,_0x82e3eb){if(_0x33c462['body']['id']){delete _0x33c462[_0xf752('0x41')]['id'];}return db['ZendeskField']['find']({'where':{'id':_0x33c462['params']['id']}})[_0xf752('0x1c')](handleEntityNotFound(_0x82e3eb,null))['then'](saveUpdates(_0x33c462[_0xf752('0x41')],null))['then'](respondWithResult(_0x82e3eb,null))[_0xf752('0x3f')](handleError(_0x82e3eb,null));};exports[_0xf752('0x42')]=function(_0x21a272,_0x281470){return db[_0xf752('0x22')]['find']({'where':{'id':_0x21a272[_0xf752('0x3e')]['id']}})[_0xf752('0x1c')](handleEntityNotFound(_0x281470,null))['then'](removeEntity(_0x281470,null))['catch'](handleError(_0x281470,null));};