Built motion from commit f7863d46.|2.5.41
[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 _0x6988=['querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/license/util','status','end','undefined','limit','count','offset','set','json','reject','save','then','sendStatus','error','stack','name','send','ZendeskField','type','key','model','map','query','filters','intersection','attributes','fields','length','hasOwnProperty','order','sort','where','pick','merge','VIRTUAL','options','includeAll','include','findAll','show','params','keys','find','catch','create','body','update','destroy','eml-format','rimraf','zip-dir','fast-json-patch','bluebird','mustache','util','path','to-csv','fs-extra','lodash','squel','crypto','jsforce','desk.js'];(function(_0x19e35c,_0x29cd1e){var _0x3e1fe8=function(_0x17258b){while(--_0x17258b){_0x19e35c['push'](_0x19e35c['shift']());}};_0x3e1fe8(++_0x29cd1e);}(_0x6988,0x81));var _0x8698=function(_0x17a587,_0x8b50ea){_0x17a587=_0x17a587-0x0;var _0x36f752=_0x6988[_0x17a587];return _0x36f752;};'use strict';var emlformat=require(_0x8698('0x0'));var rimraf=require(_0x8698('0x1'));var zipdir=require(_0x8698('0x2'));var jsonpatch=require(_0x8698('0x3'));var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0x8698('0x4'));var Mustache=require(_0x8698('0x5'));var util=require(_0x8698('0x6'));var path=require(_0x8698('0x7'));var sox=require('sox');var csv=require(_0x8698('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x8698('0x9'));var _=require(_0x8698('0xa'));var squel=require(_0x8698('0xb'));var crypto=require(_0x8698('0xc'));var jsforce=require(_0x8698('0xd'));var deskjs=require(_0x8698('0xe'));var toCsv=require('to-csv');var querystring=require(_0x8698('0xf'));var Papa=require(_0x8698('0x10'));var Redis=require(_0x8698('0x11'));var authService=require(_0x8698('0x12'));var qs=require(_0x8698('0x13'));var as=require(_0x8698('0x14'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x8698('0x15'))(_0x8698('0x16'));var utils=require(_0x8698('0x17'));var config=require('../../config/environment');var licenseUtil=require(_0x8698('0x18'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x5ba336,_0x28587c){_0x28587c=_0x28587c||0xcc;return function(_0x510f8b){if(_0x510f8b){return _0x5ba336['sendStatus'](_0x28587c);}return _0x5ba336[_0x8698('0x19')](_0x28587c)[_0x8698('0x1a')]();};}function respondWithResult(_0x246d98,_0x2b0c5f){_0x2b0c5f=_0x2b0c5f||0xc8;return function(_0x21037d){if(_0x21037d){return _0x246d98['status'](_0x2b0c5f)['json'](_0x21037d);}};}function respondWithFilteredResult(_0x4e811d,_0x35de00){return function(_0x219b1a){if(_0x219b1a){var _0x4c59ba=typeof _0x35de00['offset']===_0x8698('0x1b')&&typeof _0x35de00[_0x8698('0x1c')]===_0x8698('0x1b');var _0x59722b=_0x219b1a[_0x8698('0x1d')];var _0x35f7ec=_0x4c59ba?0x0:_0x35de00[_0x8698('0x1e')];var _0x4a1da8=_0x4c59ba?_0x219b1a['count']:_0x35de00[_0x8698('0x1e')]+_0x35de00['limit'];var _0x1af6f9;if(_0x4a1da8>=_0x59722b){_0x4a1da8=_0x59722b;_0x1af6f9=0xc8;}else{_0x1af6f9=0xce;}_0x4e811d[_0x8698('0x19')](_0x1af6f9);return _0x4e811d[_0x8698('0x1f')]('Content-Range',_0x35f7ec+'-'+_0x4a1da8+'/'+_0x59722b)[_0x8698('0x20')](_0x219b1a);}return null;};}function patchUpdates(_0x20b2c7){return function(_0x3fdc69){try{jsonpatch['apply'](_0x3fdc69,_0x20b2c7,!![]);}catch(_0x5b7a04){return BPromise[_0x8698('0x21')](_0x5b7a04);}return _0x3fdc69[_0x8698('0x22')]();};}function saveUpdates(_0x8b702e,_0x101ab5){return function(_0x57cdc0){if(_0x57cdc0){return _0x57cdc0['update'](_0x8b702e)[_0x8698('0x23')](function(_0x3eebbd){return _0x3eebbd;});}return null;};}function removeEntity(_0x312558,_0x14e9f9){return function(_0x70db99){if(_0x70db99){return _0x70db99['destroy']()[_0x8698('0x23')](function(){_0x312558[_0x8698('0x19')](0xcc)[_0x8698('0x1a')]();});}};}function handleEntityNotFound(_0x5d8766,_0x2681ae){return function(_0x4a5054){if(!_0x4a5054){_0x5d8766[_0x8698('0x24')](0x194);}return _0x4a5054;};}function handleError(_0x57261f,_0x502a49){_0x502a49=_0x502a49||0x1f4;return function(_0x168dd0){logger[_0x8698('0x25')](_0x168dd0[_0x8698('0x26')]);if(_0x168dd0[_0x8698('0x27')]){delete _0x168dd0[_0x8698('0x27')];}_0x57261f['status'](_0x502a49)[_0x8698('0x28')](_0x168dd0);};}exports['index']=function(_0x423118,_0x42c5c4){var _0x275c9e={},_0x23016f={},_0x2f6d58={'count':0x0,'rows':[]};var _0x4ac751=_['map'](db[_0x8698('0x29')]['rawAttributes'],function(_0x3d596f){return{'name':_0x3d596f['fieldName'],'type':_0x3d596f[_0x8698('0x2a')][_0x8698('0x2b')]};});_0x23016f[_0x8698('0x2c')]=_[_0x8698('0x2d')](_0x4ac751,'name');_0x23016f[_0x8698('0x2e')]=_['keys'](_0x423118[_0x8698('0x2e')]);_0x23016f[_0x8698('0x2f')]=_[_0x8698('0x30')](_0x23016f[_0x8698('0x2c')],_0x23016f[_0x8698('0x2e')]);_0x275c9e[_0x8698('0x31')]=_[_0x8698('0x30')](_0x23016f[_0x8698('0x2c')],qs[_0x8698('0x32')](_0x423118['query']['fields']));_0x275c9e[_0x8698('0x31')]=_0x275c9e[_0x8698('0x31')][_0x8698('0x33')]?_0x275c9e['attributes']:_0x23016f['model'];if(!_0x423118['query'][_0x8698('0x34')]('nolimit')){_0x275c9e[_0x8698('0x1c')]=qs[_0x8698('0x1c')](_0x423118['query'][_0x8698('0x1c')]);_0x275c9e['offset']=qs[_0x8698('0x1e')](_0x423118['query']['offset']);}_0x275c9e[_0x8698('0x35')]=qs[_0x8698('0x36')](_0x423118[_0x8698('0x2e')][_0x8698('0x36')]);_0x275c9e[_0x8698('0x37')]=qs['filters'](_[_0x8698('0x38')](_0x423118['query'],_0x23016f[_0x8698('0x2f')]),_0x4ac751);if(_0x423118[_0x8698('0x2e')]['filter']){_0x275c9e[_0x8698('0x37')]=_[_0x8698('0x39')](_0x275c9e[_0x8698('0x37')],{'$or':_['map'](_0x4ac751,function(_0x29cdd3){if(_0x29cdd3[_0x8698('0x2a')]!==_0x8698('0x3a')){var _0x4f144d={};_0x4f144d[_0x29cdd3[_0x8698('0x27')]]={'$like':'%'+_0x423118[_0x8698('0x2e')]['filter']+'%'};return _0x4f144d;}})});}_0x275c9e=_[_0x8698('0x39')]({},_0x275c9e,_0x423118[_0x8698('0x3b')]);var _0x38d7d5={'where':_0x275c9e[_0x8698('0x37')]};return db[_0x8698('0x29')]['count'](_0x38d7d5)[_0x8698('0x23')](function(_0x42e8b9){_0x2f6d58[_0x8698('0x1d')]=_0x42e8b9;if(_0x423118[_0x8698('0x2e')][_0x8698('0x3c')]){_0x275c9e[_0x8698('0x3d')]=[{'all':!![]}];}return db['ZendeskField'][_0x8698('0x3e')](_0x275c9e);})[_0x8698('0x23')](function(_0x5a7039){_0x2f6d58['rows']=_0x5a7039;return _0x2f6d58;})[_0x8698('0x23')](respondWithFilteredResult(_0x42c5c4,_0x275c9e))['catch'](handleError(_0x42c5c4,null));};exports[_0x8698('0x3f')]=function(_0x10dd80,_0x125461){var _0x1f9ed1={'raw':!![],'where':{'id':_0x10dd80[_0x8698('0x40')]['id']}},_0x1bad4d={};_0x1bad4d[_0x8698('0x2c')]=_[_0x8698('0x41')](db[_0x8698('0x29')]['rawAttributes']);_0x1bad4d['query']=_[_0x8698('0x41')](_0x10dd80[_0x8698('0x2e')]);_0x1bad4d[_0x8698('0x2f')]=_['intersection'](_0x1bad4d[_0x8698('0x2c')],_0x1bad4d[_0x8698('0x2e')]);_0x1f9ed1[_0x8698('0x31')]=_[_0x8698('0x30')](_0x1bad4d[_0x8698('0x2c')],qs[_0x8698('0x32')](_0x10dd80[_0x8698('0x2e')][_0x8698('0x32')]));_0x1f9ed1['attributes']=_0x1f9ed1[_0x8698('0x31')][_0x8698('0x33')]?_0x1f9ed1[_0x8698('0x31')]:_0x1bad4d[_0x8698('0x2c')];if(_0x10dd80[_0x8698('0x2e')][_0x8698('0x3c')]){_0x1f9ed1[_0x8698('0x3d')]=[{'all':!![]}];}_0x1f9ed1=_[_0x8698('0x39')]({},_0x1f9ed1,_0x10dd80[_0x8698('0x3b')]);return db[_0x8698('0x29')][_0x8698('0x42')](_0x1f9ed1)[_0x8698('0x23')](handleEntityNotFound(_0x125461,null))[_0x8698('0x23')](respondWithResult(_0x125461,null))[_0x8698('0x43')](handleError(_0x125461,null));};exports[_0x8698('0x44')]=function(_0x28f355,_0x4a8e97){return db['ZendeskField'][_0x8698('0x44')](_0x28f355[_0x8698('0x45')],{})[_0x8698('0x23')](respondWithResult(_0x4a8e97,0xc9))['catch'](handleError(_0x4a8e97,null));};exports[_0x8698('0x46')]=function(_0x1cb5d4,_0x124a52){if(_0x1cb5d4['body']['id']){delete _0x1cb5d4[_0x8698('0x45')]['id'];}return db[_0x8698('0x29')][_0x8698('0x42')]({'where':{'id':_0x1cb5d4['params']['id']}})[_0x8698('0x23')](handleEntityNotFound(_0x124a52,null))[_0x8698('0x23')](saveUpdates(_0x1cb5d4[_0x8698('0x45')],null))[_0x8698('0x23')](respondWithResult(_0x124a52,null))[_0x8698('0x43')](handleError(_0x124a52,null));};exports[_0x8698('0x47')]=function(_0x47cc85,_0x29a8d2){return db[_0x8698('0x29')][_0x8698('0x42')]({'where':{'id':_0x47cc85['params']['id']}})[_0x8698('0x23')](handleEntityNotFound(_0x29a8d2,null))[_0x8698('0x23')](removeEntity(_0x29a8d2,null))['catch'](handleError(_0x29a8d2,null));};