150c01e18c6824500d0158827d61ee09e293a469
[motion2.git] / server / api / intSugarcrmField / intSugarcrmField.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 _0x33c5=['moment','bluebird','mustache','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','reject','save','destroy','then','error','stack','name','send','map','SugarcrmField','rawAttributes','fieldName','type','key','model','keys','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','where','merge','VIRTUAL','filter','options','includeAll','include','findAll','rows','catch','find','create','update','body','params','eml-format','rimraf','fast-json-patch','request-promise'];(function(_0x1fd675,_0x165dfe){var _0x16b554=function(_0x5761ff){while(--_0x5761ff){_0x1fd675['push'](_0x1fd675['shift']());}};_0x16b554(++_0x165dfe);}(_0x33c5,0xe6));var _0x533c=function(_0x3b380d,_0x4bf247){_0x3b380d=_0x3b380d-0x0;var _0x54502b=_0x33c5[_0x3b380d];return _0x54502b;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x533c('0x0'));var rimraf=require(_0x533c('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x533c('0x2'));var rp=require(_0x533c('0x3'));var moment=require(_0x533c('0x4'));var BPromise=require(_0x533c('0x5'));var Mustache=require(_0x533c('0x6'));var util=require('util');var path=require(_0x533c('0x7'));var sox=require(_0x533c('0x8'));var csv=require(_0x533c('0x9'));var ejs=require(_0x533c('0xa'));var fs=require('fs');var _=require(_0x533c('0xb'));var squel=require(_0x533c('0xc'));var crypto=require(_0x533c('0xd'));var jsforce=require(_0x533c('0xe'));var deskjs=require(_0x533c('0xf'));var toCsv=require(_0x533c('0x9'));var querystring=require(_0x533c('0x10'));var Papa=require(_0x533c('0x11'));var Redis=require(_0x533c('0x12'));var authService=require(_0x533c('0x13'));var qs=require(_0x533c('0x14'));var as=require(_0x533c('0x15'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x533c('0x16'))(_0x533c('0x17'));var utils=require(_0x533c('0x18'));var config=require(_0x533c('0x19'));var licenseUtil=require(_0x533c('0x1a'));var db=require(_0x533c('0x1b'))['db'];function respondWithStatusCode(_0x530e10,_0x5c9462){_0x5c9462=_0x5c9462||0xcc;return function(_0xf93007){if(_0xf93007){return _0x530e10[_0x533c('0x1c')](_0x5c9462);}return _0x530e10[_0x533c('0x1d')](_0x5c9462)[_0x533c('0x1e')]();};}function respondWithResult(_0x1a2a83,_0x8d7c66){_0x8d7c66=_0x8d7c66||0xc8;return function(_0xa616ca){if(_0xa616ca){return _0x1a2a83['status'](_0x8d7c66)[_0x533c('0x1f')](_0xa616ca);}};}function respondWithFilteredResult(_0x7c1d33,_0x3f4a5c){return function(_0x3e544f){if(_0x3e544f){var _0x56dfb7=_0x3e544f[_0x533c('0x20')],_0x1031e7=_0x3f4a5c[_0x533c('0x21')],_0x1ed6ba=_0x3f4a5c[_0x533c('0x21')]+_0x3f4a5c[_0x533c('0x22')],_0x41e22c;if(_0x1ed6ba>=_0x56dfb7){_0x1ed6ba=_0x56dfb7;_0x41e22c=0xc8;}else{_0x41e22c=0xce;}_0x7c1d33[_0x533c('0x1d')](_0x41e22c);return _0x7c1d33[_0x533c('0x23')](_0x533c('0x24'),_0x1031e7+'-'+_0x1ed6ba+'/'+_0x56dfb7)[_0x533c('0x1f')](_0x3e544f);}return null;};}function patchUpdates(_0x2c41e9){return function(_0x78dd72){try{jsonpatch[_0x533c('0x25')](_0x78dd72,_0x2c41e9,!![]);}catch(_0x2f21db){return BPromise[_0x533c('0x26')](_0x2f21db);}return _0x78dd72[_0x533c('0x27')]();};}function saveUpdates(_0x2bc58f,_0x4ba0bd){return function(_0xce8d9){if(_0xce8d9){return _0xce8d9['update'](_0x2bc58f)['then'](function(_0x44ff98){return _0x44ff98;});}return null;};}function removeEntity(_0x36d4e4,_0x5f5090){return function(_0x21dfd3){if(_0x21dfd3){return _0x21dfd3[_0x533c('0x28')]()[_0x533c('0x29')](function(){_0x36d4e4[_0x533c('0x1d')](0xcc)['end']();});}};}function handleEntityNotFound(_0x3762f7,_0x42c87b){return function(_0x3ff86f){if(!_0x3ff86f){_0x3762f7[_0x533c('0x1c')](0x194);}return _0x3ff86f;};}function handleError(_0x25f6ef,_0x140269){_0x140269=_0x140269||0x1f4;return function(_0xb51a5){logger[_0x533c('0x2a')](_0xb51a5[_0x533c('0x2b')]);if(_0xb51a5[_0x533c('0x2c')]){delete _0xb51a5['name'];}_0x25f6ef[_0x533c('0x1d')](_0x140269)[_0x533c('0x2d')](_0xb51a5);};}exports['index']=function(_0x3caaa5,_0x4f9f4a){var _0x21f58d={},_0x14d783={},_0x4a0e86={'count':0x0,'rows':[]};var _0x8dd7f1=_[_0x533c('0x2e')](db[_0x533c('0x2f')][_0x533c('0x30')],function(_0x38d886){return{'name':_0x38d886[_0x533c('0x31')],'type':_0x38d886[_0x533c('0x32')][_0x533c('0x33')]};});_0x14d783[_0x533c('0x34')]=_['map'](_0x8dd7f1,_0x533c('0x2c'));_0x14d783['query']=_[_0x533c('0x35')](_0x3caaa5[_0x533c('0x36')]);_0x14d783[_0x533c('0x37')]=_[_0x533c('0x38')](_0x14d783[_0x533c('0x34')],_0x14d783[_0x533c('0x36')]);_0x21f58d[_0x533c('0x39')]=_[_0x533c('0x38')](_0x14d783[_0x533c('0x34')],qs[_0x533c('0x3a')](_0x3caaa5[_0x533c('0x36')][_0x533c('0x3a')]));_0x21f58d[_0x533c('0x39')]=_0x21f58d[_0x533c('0x39')][_0x533c('0x3b')]?_0x21f58d['attributes']:_0x14d783[_0x533c('0x34')];if(!_0x3caaa5[_0x533c('0x36')][_0x533c('0x3c')](_0x533c('0x3d'))){_0x21f58d['limit']=qs[_0x533c('0x22')](_0x3caaa5[_0x533c('0x36')][_0x533c('0x22')]);_0x21f58d[_0x533c('0x21')]=qs[_0x533c('0x21')](_0x3caaa5['query']['offset']);}_0x21f58d['order']=qs['sort'](_0x3caaa5['query'][_0x533c('0x3e')]);_0x21f58d['where']=qs[_0x533c('0x37')](_['pick'](_0x3caaa5[_0x533c('0x36')],_0x14d783[_0x533c('0x37')]),_0x8dd7f1);if(_0x3caaa5[_0x533c('0x36')]['filter']){_0x21f58d[_0x533c('0x3f')]=_[_0x533c('0x40')](_0x21f58d[_0x533c('0x3f')],{'$or':_['map'](_0x8dd7f1,function(_0x160d4b){if(_0x160d4b[_0x533c('0x32')]!==_0x533c('0x41')){var _0x5dfe21={};_0x5dfe21[_0x160d4b[_0x533c('0x2c')]]={'$like':'%'+_0x3caaa5[_0x533c('0x36')][_0x533c('0x42')]+'%'};return _0x5dfe21;}})});}_0x21f58d=_[_0x533c('0x40')]({},_0x21f58d,_0x3caaa5[_0x533c('0x43')]);var _0x4154f9={'where':_0x21f58d[_0x533c('0x3f')]};return db[_0x533c('0x2f')][_0x533c('0x20')](_0x4154f9)[_0x533c('0x29')](function(_0x298cea){_0x4a0e86['count']=_0x298cea;if(_0x3caaa5[_0x533c('0x36')][_0x533c('0x44')]){_0x21f58d[_0x533c('0x45')]=[{'all':!![]}];}return db[_0x533c('0x2f')][_0x533c('0x46')](_0x21f58d);})[_0x533c('0x29')](function(_0x5d2bf9){_0x4a0e86[_0x533c('0x47')]=_0x5d2bf9;return _0x4a0e86;})[_0x533c('0x29')](respondWithFilteredResult(_0x4f9f4a,_0x21f58d))[_0x533c('0x48')](handleError(_0x4f9f4a,null));};exports['show']=function(_0x1fb236,_0x4170e4){var _0x315e67={'raw':!![],'where':{'id':_0x1fb236['params']['id']}},_0x1abd47={};_0x1abd47[_0x533c('0x34')]=_['keys'](db[_0x533c('0x2f')][_0x533c('0x30')]);_0x1abd47['query']=_[_0x533c('0x35')](_0x1fb236[_0x533c('0x36')]);_0x1abd47[_0x533c('0x37')]=_['intersection'](_0x1abd47['model'],_0x1abd47['query']);_0x315e67['attributes']=_[_0x533c('0x38')](_0x1abd47['model'],qs[_0x533c('0x3a')](_0x1fb236['query'][_0x533c('0x3a')]));_0x315e67['attributes']=_0x315e67[_0x533c('0x39')][_0x533c('0x3b')]?_0x315e67['attributes']:_0x1abd47[_0x533c('0x34')];if(_0x1fb236[_0x533c('0x36')][_0x533c('0x44')]){_0x315e67[_0x533c('0x45')]=[{'all':!![]}];}_0x315e67=_[_0x533c('0x40')]({},_0x315e67,_0x1fb236['options']);return db[_0x533c('0x2f')][_0x533c('0x49')](_0x315e67)[_0x533c('0x29')](handleEntityNotFound(_0x4170e4,null))[_0x533c('0x29')](respondWithResult(_0x4170e4,null))['catch'](handleError(_0x4170e4,null));};exports[_0x533c('0x4a')]=function(_0x5080a6,_0x55d033){return db['SugarcrmField'][_0x533c('0x4a')](_0x5080a6['body'],{})[_0x533c('0x29')](respondWithResult(_0x55d033,0xc9))[_0x533c('0x48')](handleError(_0x55d033,null));};exports[_0x533c('0x4b')]=function(_0x471c59,_0xe9354a){if(_0x471c59[_0x533c('0x4c')]['id']){delete _0x471c59[_0x533c('0x4c')]['id'];}return db[_0x533c('0x2f')]['find']({'where':{'id':_0x471c59[_0x533c('0x4d')]['id']}})[_0x533c('0x29')](handleEntityNotFound(_0xe9354a,null))[_0x533c('0x29')](saveUpdates(_0x471c59['body'],null))[_0x533c('0x29')](respondWithResult(_0xe9354a,null))[_0x533c('0x48')](handleError(_0xe9354a,null));};exports['destroy']=function(_0x1d081c,_0x56610e){return db[_0x533c('0x2f')][_0x533c('0x49')]({'where':{'id':_0x1d081c[_0x533c('0x4d')]['id']}})[_0x533c('0x29')](handleEntityNotFound(_0x56610e,null))[_0x533c('0x29')](removeEntity(_0x56610e,null))[_0x533c('0x48')](handleError(_0x56610e,null));};