Built motion from commit (unavailable).|2.5.21
[motion2.git] / server / api / intFreshdeskField / intFreshdeskField.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 _0x7c49=['api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','end','status','json','count','offset','limit','set','Content-Range','apply','save','destroy','then','error','stack','name','index','map','FreshdeskField','rawAttributes','type','key','keys','filters','intersection','model','query','attributes','fields','length','hasOwnProperty','nolimit','order','pick','VIRTUAL','options','includeAll','include','show','params','catch','create','body','update','find','html-pdf','eml-format','fast-json-patch','moment','bluebird','path','sox','to-csv','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/logger'];(function(_0x42b1b9,_0x13d9f2){var _0x557eee=function(_0x482e2c){while(--_0x482e2c){_0x42b1b9['push'](_0x42b1b9['shift']());}};_0x557eee(++_0x13d9f2);}(_0x7c49,0x141));var _0x97c4=function(_0x2689d1,_0x50661a){_0x2689d1=_0x2689d1-0x0;var _0x283069=_0x7c49[_0x2689d1];return _0x283069;};'use strict';var pdf=require(_0x97c4('0x0'));var emlformat=require(_0x97c4('0x1'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0x97c4('0x2'));var rp=require('request-promise');var moment=require(_0x97c4('0x3'));var BPromise=require(_0x97c4('0x4'));var Mustache=require('mustache');var util=require('util');var path=require(_0x97c4('0x5'));var sox=require(_0x97c4('0x6'));var csv=require(_0x97c4('0x7'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x97c4('0x8'));var squel=require(_0x97c4('0x9'));var crypto=require(_0x97c4('0xa'));var jsforce=require(_0x97c4('0xb'));var deskjs=require(_0x97c4('0xc'));var toCsv=require(_0x97c4('0x7'));var querystring=require(_0x97c4('0xd'));var Papa=require(_0x97c4('0xe'));var Redis=require(_0x97c4('0xf'));var authService=require(_0x97c4('0x10'));var qs=require(_0x97c4('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0x97c4('0x12'))(_0x97c4('0x13'));var utils=require('../../config/utils');var config=require(_0x97c4('0x14'));var licenseUtil=require(_0x97c4('0x15'));var db=require(_0x97c4('0x16'))['db'];function respondWithStatusCode(_0x5bd0a2,_0x4e5e98){_0x4e5e98=_0x4e5e98||0xcc;return function(_0x1f16cc){if(_0x1f16cc){return _0x5bd0a2[_0x97c4('0x17')](_0x4e5e98);}return _0x5bd0a2['status'](_0x4e5e98)[_0x97c4('0x18')]();};}function respondWithResult(_0x519188,_0xbd9965){_0xbd9965=_0xbd9965||0xc8;return function(_0x37b746){if(_0x37b746){return _0x519188[_0x97c4('0x19')](_0xbd9965)[_0x97c4('0x1a')](_0x37b746);}};}function respondWithFilteredResult(_0x94f8ed,_0x3434ee){return function(_0x50d8ad){if(_0x50d8ad){var _0x1fff7e=_0x50d8ad[_0x97c4('0x1b')],_0x5d6fc3=_0x3434ee[_0x97c4('0x1c')],_0x23b79f=_0x3434ee[_0x97c4('0x1c')]+_0x3434ee[_0x97c4('0x1d')],_0x465c79;if(_0x23b79f>=_0x1fff7e){_0x23b79f=_0x1fff7e;_0x465c79=0xc8;}else{_0x465c79=0xce;}_0x94f8ed[_0x97c4('0x19')](_0x465c79);return _0x94f8ed[_0x97c4('0x1e')](_0x97c4('0x1f'),_0x5d6fc3+'-'+_0x23b79f+'/'+_0x1fff7e)[_0x97c4('0x1a')](_0x50d8ad);}return null;};}function patchUpdates(_0x49f5c1){return function(_0x317916){try{jsonpatch[_0x97c4('0x20')](_0x317916,_0x49f5c1,!![]);}catch(_0x460c5b){return BPromise['reject'](_0x460c5b);}return _0x317916[_0x97c4('0x21')]();};}function saveUpdates(_0x222ba2,_0x288284){return function(_0x4cff1a){if(_0x4cff1a){return _0x4cff1a['update'](_0x222ba2)['then'](function(_0x5d6a53){return _0x5d6a53;});}return null;};}function removeEntity(_0x3373f8,_0x3447fc){return function(_0x40859){if(_0x40859){return _0x40859[_0x97c4('0x22')]()[_0x97c4('0x23')](function(){_0x3373f8[_0x97c4('0x19')](0xcc)[_0x97c4('0x18')]();});}};}function handleEntityNotFound(_0x3c00aa,_0x42abf6){return function(_0x1420b6){if(!_0x1420b6){_0x3c00aa[_0x97c4('0x17')](0x194);}return _0x1420b6;};}function handleError(_0x16ddef,_0x163a22){_0x163a22=_0x163a22||0x1f4;return function(_0x4afb57){logger[_0x97c4('0x24')](_0x4afb57[_0x97c4('0x25')]);if(_0x4afb57[_0x97c4('0x26')]){delete _0x4afb57['name'];}_0x16ddef[_0x97c4('0x19')](_0x163a22)['send'](_0x4afb57);};}exports[_0x97c4('0x27')]=function(_0xafcc3d,_0x355e48){var _0x40be2d={},_0x2718be={},_0x145e4f={'count':0x0,'rows':[]};var _0x23c7a3=_[_0x97c4('0x28')](db[_0x97c4('0x29')][_0x97c4('0x2a')],function(_0x3bc0d2){return{'name':_0x3bc0d2['fieldName'],'type':_0x3bc0d2[_0x97c4('0x2b')][_0x97c4('0x2c')]};});_0x2718be['model']=_['map'](_0x23c7a3,_0x97c4('0x26'));_0x2718be['query']=_[_0x97c4('0x2d')](_0xafcc3d['query']);_0x2718be[_0x97c4('0x2e')]=_[_0x97c4('0x2f')](_0x2718be[_0x97c4('0x30')],_0x2718be[_0x97c4('0x31')]);_0x40be2d[_0x97c4('0x32')]=_[_0x97c4('0x2f')](_0x2718be[_0x97c4('0x30')],qs[_0x97c4('0x33')](_0xafcc3d[_0x97c4('0x31')]['fields']));_0x40be2d['attributes']=_0x40be2d[_0x97c4('0x32')][_0x97c4('0x34')]?_0x40be2d[_0x97c4('0x32')]:_0x2718be[_0x97c4('0x30')];if(!_0xafcc3d[_0x97c4('0x31')][_0x97c4('0x35')](_0x97c4('0x36'))){_0x40be2d[_0x97c4('0x1d')]=qs['limit'](_0xafcc3d[_0x97c4('0x31')][_0x97c4('0x1d')]);_0x40be2d[_0x97c4('0x1c')]=qs[_0x97c4('0x1c')](_0xafcc3d[_0x97c4('0x31')][_0x97c4('0x1c')]);}_0x40be2d[_0x97c4('0x37')]=qs['sort'](_0xafcc3d[_0x97c4('0x31')]['sort']);_0x40be2d['where']=qs[_0x97c4('0x2e')](_[_0x97c4('0x38')](_0xafcc3d[_0x97c4('0x31')],_0x2718be[_0x97c4('0x2e')]),_0x23c7a3);if(_0xafcc3d[_0x97c4('0x31')]['filter']){_0x40be2d['where']=_['merge'](_0x40be2d['where'],{'$or':_[_0x97c4('0x28')](_0x23c7a3,function(_0x35eb2c){if(_0x35eb2c[_0x97c4('0x2b')]!==_0x97c4('0x39')){var _0xc28870={};_0xc28870[_0x35eb2c[_0x97c4('0x26')]]={'$like':'%'+_0xafcc3d[_0x97c4('0x31')]['filter']+'%'};return _0xc28870;}})});}_0x40be2d=_['merge']({},_0x40be2d,_0xafcc3d[_0x97c4('0x3a')]);var _0xd2feb9={'where':_0x40be2d['where']};return db[_0x97c4('0x29')]['count'](_0xd2feb9)[_0x97c4('0x23')](function(_0x2524b2){_0x145e4f[_0x97c4('0x1b')]=_0x2524b2;if(_0xafcc3d['query'][_0x97c4('0x3b')]){_0x40be2d[_0x97c4('0x3c')]=[{'all':!![]}];}return db[_0x97c4('0x29')]['findAll'](_0x40be2d);})[_0x97c4('0x23')](function(_0x40cc14){_0x145e4f['rows']=_0x40cc14;return _0x145e4f;})[_0x97c4('0x23')](respondWithFilteredResult(_0x355e48,_0x40be2d))['catch'](handleError(_0x355e48,null));};exports[_0x97c4('0x3d')]=function(_0x44c177,_0x421dd9){var _0x3aa658={'raw':!![],'where':{'id':_0x44c177[_0x97c4('0x3e')]['id']}},_0x550cee={};_0x550cee[_0x97c4('0x30')]=_[_0x97c4('0x2d')](db[_0x97c4('0x29')]['rawAttributes']);_0x550cee[_0x97c4('0x31')]=_['keys'](_0x44c177['query']);_0x550cee[_0x97c4('0x2e')]=_[_0x97c4('0x2f')](_0x550cee['model'],_0x550cee[_0x97c4('0x31')]);_0x3aa658[_0x97c4('0x32')]=_[_0x97c4('0x2f')](_0x550cee[_0x97c4('0x30')],qs[_0x97c4('0x33')](_0x44c177[_0x97c4('0x31')][_0x97c4('0x33')]));_0x3aa658['attributes']=_0x3aa658['attributes'][_0x97c4('0x34')]?_0x3aa658[_0x97c4('0x32')]:_0x550cee[_0x97c4('0x30')];if(_0x44c177[_0x97c4('0x31')]['includeAll']){_0x3aa658['include']=[{'all':!![]}];}_0x3aa658=_['merge']({},_0x3aa658,_0x44c177[_0x97c4('0x3a')]);return db['FreshdeskField']['find'](_0x3aa658)['then'](handleEntityNotFound(_0x421dd9,null))['then'](respondWithResult(_0x421dd9,null))[_0x97c4('0x3f')](handleError(_0x421dd9,null));};exports['create']=function(_0x1fa911,_0x5be82f){return db['FreshdeskField'][_0x97c4('0x40')](_0x1fa911[_0x97c4('0x41')],{})[_0x97c4('0x23')](respondWithResult(_0x5be82f,0xc9))[_0x97c4('0x3f')](handleError(_0x5be82f,null));};exports[_0x97c4('0x42')]=function(_0xdca0b8,_0x586e8e){if(_0xdca0b8['body']['id']){delete _0xdca0b8[_0x97c4('0x41')]['id'];}return db[_0x97c4('0x29')][_0x97c4('0x43')]({'where':{'id':_0xdca0b8[_0x97c4('0x3e')]['id']}})[_0x97c4('0x23')](handleEntityNotFound(_0x586e8e,null))[_0x97c4('0x23')](saveUpdates(_0xdca0b8['body'],null))[_0x97c4('0x23')](respondWithResult(_0x586e8e,null))[_0x97c4('0x3f')](handleError(_0x586e8e,null));};exports[_0x97c4('0x22')]=function(_0x12623f,_0x43d97e){return db[_0x97c4('0x29')][_0x97c4('0x43')]({'where':{'id':_0x12623f[_0x97c4('0x3e')]['id']}})[_0x97c4('0x23')](handleEntityNotFound(_0x43d97e,null))[_0x97c4('0x23')](removeEntity(_0x43d97e,null))[_0x97c4('0x3f')](handleError(_0x43d97e,null));};