e18ac1f1e5f85d73bd9bc8d80fecb993dcfd6cb2
[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 _0x8952=['limit','set','Content-Range','reject','save','update','then','destroy','end','error','stack','name','send','map','rawAttributes','key','model','query','keys','intersection','fields','attributes','length','nolimit','sort','where','filters','pick','filter','merge','type','VIRTUAL','options','includeAll','include','catch','show','ZendeskField','find','create','body','params','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','sox','to-csv','ejs','crypto','jsforce','desk.js','querystring','ioredis','../../components/parsers/qs','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','json','count','offset'];(function(_0x2047af,_0x44b840){var _0x1b4b9f=function(_0x3b8d03){while(--_0x3b8d03){_0x2047af['push'](_0x2047af['shift']());}};_0x1b4b9f(++_0x44b840);}(_0x8952,0x17e));var _0x2895=function(_0x27f2e4,_0x663522){_0x27f2e4=_0x27f2e4-0x0;var _0x5478d3=_0x8952[_0x27f2e4];return _0x5478d3;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x2895('0x0'));var rimraf=require(_0x2895('0x1'));var zipdir=require(_0x2895('0x2'));var jsonpatch=require(_0x2895('0x3'));var rp=require(_0x2895('0x4'));var moment=require('moment');var BPromise=require(_0x2895('0x5'));var Mustache=require(_0x2895('0x6'));var util=require(_0x2895('0x7'));var path=require('path');var sox=require(_0x2895('0x8'));var csv=require(_0x2895('0x9'));var ejs=require(_0x2895('0xa'));var fs=require('fs');var _=require('lodash');var squel=require('squel');var crypto=require(_0x2895('0xb'));var jsforce=require(_0x2895('0xc'));var deskjs=require(_0x2895('0xd'));var toCsv=require(_0x2895('0x9'));var querystring=require(_0x2895('0xe'));var Papa=require('papaparse');var Redis=require(_0x2895('0xf'));var authService=require('../../components/auth/service');var qs=require(_0x2895('0x10'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x2895('0x11'));var utils=require(_0x2895('0x12'));var config=require(_0x2895('0x13'));var licenseUtil=require('../../config/license/util');var db=require(_0x2895('0x14'))['db'];function respondWithStatusCode(_0x3924be,_0x4b1342){_0x4b1342=_0x4b1342||0xcc;return function(_0x32574c){if(_0x32574c){return _0x3924be[_0x2895('0x15')](_0x4b1342);}return _0x3924be['status'](_0x4b1342)['end']();};}function respondWithResult(_0x1d1493,_0x2ca2ac){_0x2ca2ac=_0x2ca2ac||0xc8;return function(_0x5777a0){if(_0x5777a0){return _0x1d1493[_0x2895('0x16')](_0x2ca2ac)[_0x2895('0x17')](_0x5777a0);}};}function respondWithFilteredResult(_0x27b50e,_0x1ae013){return function(_0x1d3659){if(_0x1d3659){var _0x2627e6=_0x1d3659[_0x2895('0x18')],_0x6a5c7e=_0x1ae013[_0x2895('0x19')],_0x31bb7f=_0x1ae013[_0x2895('0x19')]+_0x1ae013[_0x2895('0x1a')],_0x3e96d7;if(_0x31bb7f>=_0x2627e6){_0x31bb7f=_0x2627e6;_0x3e96d7=0xc8;}else{_0x3e96d7=0xce;}_0x27b50e[_0x2895('0x16')](_0x3e96d7);return _0x27b50e[_0x2895('0x1b')](_0x2895('0x1c'),_0x6a5c7e+'-'+_0x31bb7f+'/'+_0x2627e6)[_0x2895('0x17')](_0x1d3659);}return null;};}function patchUpdates(_0x1e8d47){return function(_0x5a8eab){try{jsonpatch['apply'](_0x5a8eab,_0x1e8d47,!![]);}catch(_0x493851){return BPromise[_0x2895('0x1d')](_0x493851);}return _0x5a8eab[_0x2895('0x1e')]();};}function saveUpdates(_0x3ec4da,_0x593e47){return function(_0x2813a3){if(_0x2813a3){return _0x2813a3[_0x2895('0x1f')](_0x3ec4da)[_0x2895('0x20')](function(_0x19228e){return _0x19228e;});}return null;};}function removeEntity(_0x8b75e0,_0x5dbbfe){return function(_0x30c6c3){if(_0x30c6c3){return _0x30c6c3[_0x2895('0x21')]()['then'](function(){_0x8b75e0[_0x2895('0x16')](0xcc)[_0x2895('0x22')]();});}};}function handleEntityNotFound(_0x6f8ad4,_0x511286){return function(_0x4e884f){if(!_0x4e884f){_0x6f8ad4[_0x2895('0x15')](0x194);}return _0x4e884f;};}function handleError(_0x4569b5,_0x23b0eb){_0x23b0eb=_0x23b0eb||0x1f4;return function(_0x4a21cf){logger[_0x2895('0x23')](_0x4a21cf[_0x2895('0x24')]);if(_0x4a21cf['name']){delete _0x4a21cf[_0x2895('0x25')];}_0x4569b5[_0x2895('0x16')](_0x23b0eb)[_0x2895('0x26')](_0x4a21cf);};}exports['index']=function(_0x320661,_0x30f491){var _0x5eedfc={},_0x21f549={},_0x501898={'count':0x0,'rows':[]};var _0x5d70f5=_[_0x2895('0x27')](db['ZendeskField'][_0x2895('0x28')],function(_0x381538){return{'name':_0x381538['fieldName'],'type':_0x381538['type'][_0x2895('0x29')]};});_0x21f549[_0x2895('0x2a')]=_[_0x2895('0x27')](_0x5d70f5,_0x2895('0x25'));_0x21f549[_0x2895('0x2b')]=_[_0x2895('0x2c')](_0x320661[_0x2895('0x2b')]);_0x21f549['filters']=_[_0x2895('0x2d')](_0x21f549[_0x2895('0x2a')],_0x21f549[_0x2895('0x2b')]);_0x5eedfc['attributes']=_[_0x2895('0x2d')](_0x21f549[_0x2895('0x2a')],qs[_0x2895('0x2e')](_0x320661[_0x2895('0x2b')]['fields']));_0x5eedfc[_0x2895('0x2f')]=_0x5eedfc[_0x2895('0x2f')][_0x2895('0x30')]?_0x5eedfc[_0x2895('0x2f')]:_0x21f549[_0x2895('0x2a')];if(!_0x320661['query']['hasOwnProperty'](_0x2895('0x31'))){_0x5eedfc[_0x2895('0x1a')]=qs['limit'](_0x320661[_0x2895('0x2b')]['limit']);_0x5eedfc[_0x2895('0x19')]=qs[_0x2895('0x19')](_0x320661['query'][_0x2895('0x19')]);}_0x5eedfc['order']=qs[_0x2895('0x32')](_0x320661['query']['sort']);_0x5eedfc[_0x2895('0x33')]=qs[_0x2895('0x34')](_[_0x2895('0x35')](_0x320661['query'],_0x21f549[_0x2895('0x34')]),_0x5d70f5);if(_0x320661[_0x2895('0x2b')][_0x2895('0x36')]){_0x5eedfc[_0x2895('0x33')]=_[_0x2895('0x37')](_0x5eedfc[_0x2895('0x33')],{'$or':_[_0x2895('0x27')](_0x5d70f5,function(_0x240230){if(_0x240230[_0x2895('0x38')]!==_0x2895('0x39')){var _0x59b0e6={};_0x59b0e6[_0x240230[_0x2895('0x25')]]={'$like':'%'+_0x320661[_0x2895('0x2b')][_0x2895('0x36')]+'%'};return _0x59b0e6;}})});}_0x5eedfc=_[_0x2895('0x37')]({},_0x5eedfc,_0x320661[_0x2895('0x3a')]);var _0x12d7d8={'where':_0x5eedfc[_0x2895('0x33')]};return db['ZendeskField']['count'](_0x12d7d8)[_0x2895('0x20')](function(_0x29dc63){_0x501898[_0x2895('0x18')]=_0x29dc63;if(_0x320661[_0x2895('0x2b')][_0x2895('0x3b')]){_0x5eedfc[_0x2895('0x3c')]=[{'all':!![]}];}return db['ZendeskField']['findAll'](_0x5eedfc);})[_0x2895('0x20')](function(_0x20208f){_0x501898['rows']=_0x20208f;return _0x501898;})['then'](respondWithFilteredResult(_0x30f491,_0x5eedfc))[_0x2895('0x3d')](handleError(_0x30f491,null));};exports[_0x2895('0x3e')]=function(_0x3cc827,_0x28967f){var _0x2bac35={'raw':!![],'where':{'id':_0x3cc827['params']['id']}},_0x3e1d16={};_0x3e1d16[_0x2895('0x2a')]=_[_0x2895('0x2c')](db[_0x2895('0x3f')][_0x2895('0x28')]);_0x3e1d16['query']=_[_0x2895('0x2c')](_0x3cc827[_0x2895('0x2b')]);_0x3e1d16[_0x2895('0x34')]=_[_0x2895('0x2d')](_0x3e1d16['model'],_0x3e1d16['query']);_0x2bac35[_0x2895('0x2f')]=_[_0x2895('0x2d')](_0x3e1d16[_0x2895('0x2a')],qs[_0x2895('0x2e')](_0x3cc827[_0x2895('0x2b')]['fields']));_0x2bac35['attributes']=_0x2bac35[_0x2895('0x2f')][_0x2895('0x30')]?_0x2bac35[_0x2895('0x2f')]:_0x3e1d16[_0x2895('0x2a')];if(_0x3cc827[_0x2895('0x2b')][_0x2895('0x3b')]){_0x2bac35[_0x2895('0x3c')]=[{'all':!![]}];}_0x2bac35=_['merge']({},_0x2bac35,_0x3cc827[_0x2895('0x3a')]);return db[_0x2895('0x3f')][_0x2895('0x40')](_0x2bac35)[_0x2895('0x20')](handleEntityNotFound(_0x28967f,null))[_0x2895('0x20')](respondWithResult(_0x28967f,null))[_0x2895('0x3d')](handleError(_0x28967f,null));};exports[_0x2895('0x41')]=function(_0x299d71,_0x549059){return db[_0x2895('0x3f')][_0x2895('0x41')](_0x299d71[_0x2895('0x42')],{})['then'](respondWithResult(_0x549059,0xc9))[_0x2895('0x3d')](handleError(_0x549059,null));};exports[_0x2895('0x1f')]=function(_0x5e4f70,_0xbb09a6){if(_0x5e4f70[_0x2895('0x42')]['id']){delete _0x5e4f70[_0x2895('0x42')]['id'];}return db[_0x2895('0x3f')][_0x2895('0x40')]({'where':{'id':_0x5e4f70[_0x2895('0x43')]['id']}})[_0x2895('0x20')](handleEntityNotFound(_0xbb09a6,null))['then'](saveUpdates(_0x5e4f70[_0x2895('0x42')],null))[_0x2895('0x20')](respondWithResult(_0xbb09a6,null))['catch'](handleError(_0xbb09a6,null));};exports['destroy']=function(_0x574839,_0x212a1f){return db[_0x2895('0x3f')][_0x2895('0x40')]({'where':{'id':_0x574839[_0x2895('0x43')]['id']}})[_0x2895('0x20')](handleEntityNotFound(_0x212a1f,null))[_0x2895('0x20')](removeEntity(_0x212a1f,null))[_0x2895('0x3d')](handleError(_0x212a1f,null));};