Built motion from commit (unavailable).|2.5.5
[motion2.git] / server / api / squareProject / squareProject.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 _0xcceb=['query','keys','filters','intersection','attributes','fields','length','nolimit','sort','where','pick','filter','merge','options','includeAll','include','catch','params','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','addUsers','omit','ids','removeUsers','isArray','emit','userSquareProject:remove','getUsers','findOne','User','order','hasOwnProperty','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','path','sox','to-csv','ejs','lodash','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/environment','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./squareProject.socket','sendStatus','json','count','offset','limit','status','Content-Range','apply','reject','update','destroy','then','SquareProjects','UserProfileResource','end','error','name','send','index','map','SquareProject','rawAttributes','fieldName','type','key','model'];(function(_0x4706a6,_0x5a1c63){var _0x1bb705=function(_0x484ebb){while(--_0x484ebb){_0x4706a6['push'](_0x4706a6['shift']());}};_0x1bb705(++_0x5a1c63);}(_0xcceb,0x88));var _0xbcce=function(_0x3f970c,_0x1b927b){_0x3f970c=_0x3f970c-0x0;var _0x24300c=_0xcceb[_0x3f970c];return _0x24300c;};'use strict';var pdf=require(_0xbcce('0x0'));var emlformat=require(_0xbcce('0x1'));var rimraf=require(_0xbcce('0x2'));var zipdir=require(_0xbcce('0x3'));var jsonpatch=require(_0xbcce('0x4'));var rp=require(_0xbcce('0x5'));var moment=require(_0xbcce('0x6'));var BPromise=require(_0xbcce('0x7'));var Mustache=require(_0xbcce('0x8'));var util=require('util');var path=require(_0xbcce('0x9'));var sox=require(_0xbcce('0xa'));var csv=require(_0xbcce('0xb'));var ejs=require(_0xbcce('0xc'));var fs=require('fs');var _=require(_0xbcce('0xd'));var squel=require(_0xbcce('0xe'));var crypto=require('crypto');var jsforce=require(_0xbcce('0xf'));var deskjs=require(_0xbcce('0x10'));var toCsv=require(_0xbcce('0xb'));var querystring=require(_0xbcce('0x11'));var Papa=require(_0xbcce('0x12'));var Redis=require(_0xbcce('0x13'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0xbcce('0x14'));var hardwareService=require(_0xbcce('0x15'));var logger=require('../../config/logger')(_0xbcce('0x16'));var utils=require('../../config/utils');var config=require(_0xbcce('0x17'));var licenseUtil=require('../../config/license/util');var db=require(_0xbcce('0x18'))['db'];config[_0xbcce('0x19')]=_[_0xbcce('0x1a')](config['redis'],{'host':_0xbcce('0x1b'),'port':0x18eb});var socket=require(_0xbcce('0x1c'))(new Redis(config[_0xbcce('0x19')]));require(_0xbcce('0x1d'))['register'](socket);function respondWithStatusCode(_0x2bb739,_0x76e753){_0x76e753=_0x76e753||0xcc;return function(_0x229340){if(_0x229340){return _0x2bb739[_0xbcce('0x1e')](_0x76e753);}return _0x2bb739['status'](_0x76e753)['end']();};}function respondWithResult(_0x1673a7,_0x35f10d){_0x35f10d=_0x35f10d||0xc8;return function(_0x43dec9){if(_0x43dec9){return _0x1673a7['status'](_0x35f10d)[_0xbcce('0x1f')](_0x43dec9);}};}function respondWithFilteredResult(_0x40bee9,_0x3caa84){return function(_0x4a86b5){if(_0x4a86b5){var _0x28736e=_0x4a86b5[_0xbcce('0x20')],_0x520044=_0x3caa84['offset'],_0x7ef057=_0x3caa84[_0xbcce('0x21')]+_0x3caa84[_0xbcce('0x22')],_0x2d0263;if(_0x7ef057>=_0x28736e){_0x7ef057=_0x28736e;_0x2d0263=0xc8;}else{_0x2d0263=0xce;}_0x40bee9[_0xbcce('0x23')](_0x2d0263);return _0x40bee9['set'](_0xbcce('0x24'),_0x520044+'-'+_0x7ef057+'/'+_0x28736e)[_0xbcce('0x1f')](_0x4a86b5);}return null;};}function patchUpdates(_0x33362a){return function(_0x1743d0){try{jsonpatch[_0xbcce('0x25')](_0x1743d0,_0x33362a,!![]);}catch(_0x3f35d3){return BPromise[_0xbcce('0x26')](_0x3f35d3);}return _0x1743d0['save']();};}function saveUpdates(_0x289e18,_0x3a3088){return function(_0x151b52){if(_0x151b52){return _0x151b52[_0xbcce('0x27')](_0x289e18)['then'](function(_0x30ca9e){return _0x30ca9e;});}return null;};}function removeEntity(_0x6766af,_0x1a5794){return function(_0x4d8be3){if(_0x4d8be3){return _0x4d8be3[_0xbcce('0x28')]()[_0xbcce('0x29')](function(){var _0x164394=_0x4d8be3['get']({'plain':!![]});var _0x56ec70=_0xbcce('0x2a');return db[_0xbcce('0x2b')]['destroy']({'where':{'type':_0x56ec70,'resourceId':_0x164394['id']}})[_0xbcce('0x29')](function(){return _0x4d8be3;});})[_0xbcce('0x29')](function(){_0x6766af[_0xbcce('0x23')](0xcc)[_0xbcce('0x2c')]();});}};}function handleEntityNotFound(_0x2bc703,_0x3c63a8){return function(_0x5598eb){if(!_0x5598eb){_0x2bc703[_0xbcce('0x1e')](0x194);}return _0x5598eb;};}function handleError(_0x427c26,_0x25d7f2){_0x25d7f2=_0x25d7f2||0x1f4;return function(_0x151247){logger[_0xbcce('0x2d')](_0x151247['stack']);if(_0x151247[_0xbcce('0x2e')]){delete _0x151247[_0xbcce('0x2e')];}_0x427c26[_0xbcce('0x23')](_0x25d7f2)[_0xbcce('0x2f')](_0x151247);};}exports[_0xbcce('0x30')]=function(_0x1f325a,_0x19ce67){var _0x2b06b5={},_0x1eea2c={},_0xb51e1e={'count':0x0,'rows':[]};var _0x113dd4=_[_0xbcce('0x31')](db[_0xbcce('0x32')][_0xbcce('0x33')],function(_0xdc5939){return{'name':_0xdc5939[_0xbcce('0x34')],'type':_0xdc5939[_0xbcce('0x35')][_0xbcce('0x36')]};});_0x1eea2c[_0xbcce('0x37')]=_[_0xbcce('0x31')](_0x113dd4,_0xbcce('0x2e'));_0x1eea2c[_0xbcce('0x38')]=_[_0xbcce('0x39')](_0x1f325a[_0xbcce('0x38')]);_0x1eea2c[_0xbcce('0x3a')]=_[_0xbcce('0x3b')](_0x1eea2c['model'],_0x1eea2c[_0xbcce('0x38')]);_0x2b06b5[_0xbcce('0x3c')]=_['intersection'](_0x1eea2c['model'],qs[_0xbcce('0x3d')](_0x1f325a[_0xbcce('0x38')][_0xbcce('0x3d')]));_0x2b06b5['attributes']=_0x2b06b5[_0xbcce('0x3c')][_0xbcce('0x3e')]?_0x2b06b5['attributes']:_0x1eea2c[_0xbcce('0x37')];if(!_0x1f325a[_0xbcce('0x38')]['hasOwnProperty'](_0xbcce('0x3f'))){_0x2b06b5[_0xbcce('0x22')]=qs[_0xbcce('0x22')](_0x1f325a[_0xbcce('0x38')][_0xbcce('0x22')]);_0x2b06b5['offset']=qs[_0xbcce('0x21')](_0x1f325a['query']['offset']);}_0x2b06b5['order']=qs[_0xbcce('0x40')](_0x1f325a['query'][_0xbcce('0x40')]);_0x2b06b5[_0xbcce('0x41')]=qs[_0xbcce('0x3a')](_[_0xbcce('0x42')](_0x1f325a[_0xbcce('0x38')],_0x1eea2c['filters']),_0x113dd4);if(_0x1f325a['query'][_0xbcce('0x43')]){_0x2b06b5['where']=_[_0xbcce('0x44')](_0x2b06b5[_0xbcce('0x41')],{'$or':_[_0xbcce('0x31')](_0x113dd4,function(_0x296738){if(_0x296738['type']!=='VIRTUAL'){var _0xfb720a={};_0xfb720a[_0x296738[_0xbcce('0x2e')]]={'$like':'%'+_0x1f325a[_0xbcce('0x38')][_0xbcce('0x43')]+'%'};return _0xfb720a;}})});}_0x2b06b5=_[_0xbcce('0x44')]({},_0x2b06b5,_0x1f325a[_0xbcce('0x45')]);var _0x37c1fc={'where':_0x2b06b5[_0xbcce('0x41')]};return db[_0xbcce('0x32')][_0xbcce('0x20')](_0x37c1fc)[_0xbcce('0x29')](function(_0x544bd0){_0xb51e1e['count']=_0x544bd0;if(_0x1f325a[_0xbcce('0x38')][_0xbcce('0x46')]){_0x2b06b5[_0xbcce('0x47')]=[{'all':!![]}];}return db['SquareProject']['findAll'](_0x2b06b5);})[_0xbcce('0x29')](function(_0xf829e3){_0xb51e1e['rows']=_0xf829e3;return _0xb51e1e;})[_0xbcce('0x29')](respondWithFilteredResult(_0x19ce67,_0x2b06b5))[_0xbcce('0x48')](handleError(_0x19ce67,null));};exports['show']=function(_0x191d9c,_0x41e1b0){var _0x39f251={'raw':![],'where':{'id':_0x191d9c[_0xbcce('0x49')]['id']}},_0x3ae9ba={};_0x3ae9ba['model']=_['keys'](db[_0xbcce('0x32')][_0xbcce('0x33')]);_0x3ae9ba['query']=_[_0xbcce('0x39')](_0x191d9c[_0xbcce('0x38')]);_0x3ae9ba['filters']=_[_0xbcce('0x3b')](_0x3ae9ba[_0xbcce('0x37')],_0x3ae9ba[_0xbcce('0x38')]);_0x39f251[_0xbcce('0x3c')]=_['intersection'](_0x3ae9ba[_0xbcce('0x37')],qs[_0xbcce('0x3d')](_0x191d9c['query']['fields']));_0x39f251[_0xbcce('0x3c')]=_0x39f251[_0xbcce('0x3c')][_0xbcce('0x3e')]?_0x39f251['attributes']:_0x3ae9ba[_0xbcce('0x37')];if(_0x191d9c[_0xbcce('0x38')][_0xbcce('0x46')]){_0x39f251[_0xbcce('0x47')]=[{'all':!![]}];}_0x39f251=_['merge']({},_0x39f251,_0x191d9c['options']);return db[_0xbcce('0x32')][_0xbcce('0x4a')](_0x39f251)[_0xbcce('0x29')](handleEntityNotFound(_0x41e1b0,null))[_0xbcce('0x29')](respondWithResult(_0x41e1b0,null))[_0xbcce('0x48')](handleError(_0x41e1b0,null));};exports[_0xbcce('0x4b')]=function(_0x39bd6f,_0x4ad2b8){return db[_0xbcce('0x32')][_0xbcce('0x4b')](_0x39bd6f[_0xbcce('0x4c')],{})['then'](function(_0x259348){var _0x5cbaa6=_0x39bd6f[_0xbcce('0x4d')]['get']({'plain':!![]});if(!_0x5cbaa6)throw new Error(_0xbcce('0x4e'));if(_0x5cbaa6[_0xbcce('0x4f')]===_0xbcce('0x4d')){var _0x297996=_0x259348['get']({'plain':!![]});var _0x4cbefa=_0xbcce('0x2a');return db[_0xbcce('0x50')][_0xbcce('0x4a')]({'where':{'name':_0x4cbefa,'userProfileId':_0x5cbaa6[_0xbcce('0x51')]},'raw':!![]})[_0xbcce('0x29')](function(_0xbcfeaa){if(_0xbcfeaa&&_0xbcfeaa[_0xbcce('0x52')]===0x0){return db[_0xbcce('0x2b')]['create']({'name':_0x297996['name'],'resourceId':_0x297996['id'],'type':_0xbcfeaa[_0xbcce('0x2e')],'sectionId':_0xbcfeaa['id']},{})[_0xbcce('0x29')](function(){return _0x259348;});}else{return _0x259348;}})[_0xbcce('0x48')](function(_0x551a41){logger['error'](_0xbcce('0x53'),_0x551a41);throw _0x551a41;});}return _0x259348;})[_0xbcce('0x29')](respondWithResult(_0x4ad2b8,0xc9))[_0xbcce('0x48')](handleError(_0x4ad2b8,null));};exports[_0xbcce('0x27')]=function(_0x1151ec,_0x780b4b){if(_0x1151ec[_0xbcce('0x4c')]['id']){delete _0x1151ec[_0xbcce('0x4c')]['id'];}return db[_0xbcce('0x32')][_0xbcce('0x4a')]({'where':{'id':_0x1151ec[_0xbcce('0x49')]['id']}})[_0xbcce('0x29')](handleEntityNotFound(_0x780b4b,null))[_0xbcce('0x29')](saveUpdates(_0x1151ec[_0xbcce('0x4c')],null))[_0xbcce('0x29')](respondWithResult(_0x780b4b,null))[_0xbcce('0x48')](handleError(_0x780b4b,null));};exports[_0xbcce('0x28')]=function(_0x5225db,_0x23d40a){return db[_0xbcce('0x32')][_0xbcce('0x4a')]({'where':{'id':_0x5225db['params']['id']}})['then'](handleEntityNotFound(_0x23d40a,null))[_0xbcce('0x29')](removeEntity(_0x23d40a,null))[_0xbcce('0x48')](handleError(_0x23d40a,null));};exports['addUsers']=function(_0x401fc5,_0x159c24,_0x3201f5){return db[_0xbcce('0x32')][_0xbcce('0x4a')]({'where':{'id':_0x401fc5[_0xbcce('0x49')]['id']}})['then'](handleEntityNotFound(_0x159c24,null))['then'](function(_0x2c25f0){if(_0x2c25f0){return _0x2c25f0[_0xbcce('0x54')](_0x401fc5[_0xbcce('0x4c')]['ids'],_[_0xbcce('0x55')](_0x401fc5[_0xbcce('0x4c')],[_0xbcce('0x56'),'id'])||{});}})[_0xbcce('0x29')](respondWithResult(_0x159c24,null))[_0xbcce('0x48')](handleError(_0x159c24,null));};exports[_0xbcce('0x57')]=function(_0x1528c3,_0x4b74ec,_0x5d4d9a){return db[_0xbcce('0x32')][_0xbcce('0x4a')]({'where':{'id':_0x1528c3[_0xbcce('0x49')]['id']}})[_0xbcce('0x29')](handleEntityNotFound(_0x4b74ec,null))['then'](function(_0x3ea90c){if(_0x3ea90c){return _0x3ea90c['removeUsers'](_0x1528c3[_0xbcce('0x38')][_0xbcce('0x56')])[_0xbcce('0x29')](function(){if(_[_0xbcce('0x58')](_0x1528c3[_0xbcce('0x38')][_0xbcce('0x56')])){for(var _0x13e67c=0x0;_0x13e67c<_0x1528c3['query'][_0xbcce('0x56')]['length'];_0x13e67c+=0x1){socket[_0xbcce('0x59')]('userSquareProject:remove',{'UserId':Number(_0x1528c3[_0xbcce('0x38')][_0xbcce('0x56')][_0x13e67c]),'SquareProjectId':Number(_0x1528c3[_0xbcce('0x49')]['id'])});}}else{socket[_0xbcce('0x59')](_0xbcce('0x5a'),{'UserId':Number(_0x1528c3[_0xbcce('0x38')][_0xbcce('0x56')]),'SquareProjectId':Number(_0x1528c3[_0xbcce('0x49')]['id'])});}});}})[_0xbcce('0x29')](respondWithStatusCode(_0x4b74ec,null))[_0xbcce('0x48')](handleError(_0x4b74ec,null));};exports[_0xbcce('0x5b')]=function(_0x5ac0a2,_0x1f05db,_0x189774){var _0x2306ec={};var _0x3f2484={};var _0x54cf36;var _0x7346ae;return db[_0xbcce('0x32')][_0xbcce('0x5c')]({'where':{'id':_0x5ac0a2['params']['id']}})[_0xbcce('0x29')](handleEntityNotFound(_0x1f05db,null))[_0xbcce('0x29')](function(_0xc08a){if(_0xc08a){_0x54cf36=_0xc08a;_0x3f2484[_0xbcce('0x37')]=_[_0xbcce('0x39')](db[_0xbcce('0x5d')][_0xbcce('0x33')]);_0x3f2484[_0xbcce('0x38')]=_[_0xbcce('0x39')](_0x5ac0a2[_0xbcce('0x38')]);_0x3f2484[_0xbcce('0x3a')]=_[_0xbcce('0x3b')](_0x3f2484['model'],_0x3f2484[_0xbcce('0x38')]);_0x2306ec[_0xbcce('0x3c')]=_['intersection'](_0x3f2484['model'],qs[_0xbcce('0x3d')](_0x5ac0a2[_0xbcce('0x38')][_0xbcce('0x3d')]));_0x2306ec[_0xbcce('0x3c')]=_0x2306ec[_0xbcce('0x3c')][_0xbcce('0x3e')]?_0x2306ec['attributes']:_0x3f2484['model'];_0x2306ec[_0xbcce('0x5e')]=qs['sort'](_0x5ac0a2['query'][_0xbcce('0x40')]);_0x2306ec['where']=qs[_0xbcce('0x3a')](_[_0xbcce('0x42')](_0x5ac0a2[_0xbcce('0x38')],_0x3f2484['filters']));if(_0x5ac0a2[_0xbcce('0x38')][_0xbcce('0x43')]){_0x2306ec[_0xbcce('0x41')]=_['merge'](_0x2306ec[_0xbcce('0x41')],{'$or':_[_0xbcce('0x31')](_0x2306ec['attributes'],function(_0x456c82){var _0x44c8e6={};_0x44c8e6[_0x456c82]={'$like':'%'+_0x5ac0a2[_0xbcce('0x38')][_0xbcce('0x43')]+'%'};return _0x44c8e6;})});}_0x2306ec=_['merge']({},_0x2306ec,_0x5ac0a2[_0xbcce('0x45')]);return _0x54cf36['getUsers'](_0x2306ec);}})[_0xbcce('0x29')](function(_0x18d221){if(_0x18d221){_0x7346ae=_0x18d221[_0xbcce('0x3e')];if(!_0x5ac0a2[_0xbcce('0x38')][_0xbcce('0x5f')](_0xbcce('0x3f'))){_0x2306ec[_0xbcce('0x22')]=qs[_0xbcce('0x22')](_0x5ac0a2[_0xbcce('0x38')][_0xbcce('0x22')]);_0x2306ec['offset']=qs[_0xbcce('0x21')](_0x5ac0a2[_0xbcce('0x38')][_0xbcce('0x21')]);}return _0x54cf36['getUsers'](_0x2306ec);}})[_0xbcce('0x29')](function(_0x3df03d){if(_0x3df03d){return _0x3df03d?{'count':_0x7346ae,'rows':_0x3df03d}:null;}})[_0xbcce('0x29')](respondWithResult(_0x1f05db,null))[_0xbcce('0x48')](handleError(_0x1f05db,null));};