Built motion from commit (unavailable).|2.5.14
[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 _0xb2a2=['destroy','get','SquareProjects','UserProfileResource','error','stack','name','send','map','fieldName','type','key','query','keys','filters','intersection','model','attributes','fields','length','order','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','SquareProject','findAll','catch','params','rawAttributes','include','create','body','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','find','userProfileId','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','addUsers','ids','isArray','userSquareProject:remove','findOne','User','getUsers','hasOwnProperty','nolimit','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','util','path','to-csv','ejs','lodash','squel','crypto','desk.js','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','redis','localhost','socket.io-emitter','./squareProject.socket','register','sendStatus','end','json','count','offset','limit','status','set','Content-Range','apply','reject','save','update','then'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0xb2a2,0x154));var _0x2b2a=function(_0x34b831,_0x44b82f){_0x34b831=_0x34b831-0x0;var _0x25dedb=_0xb2a2[_0x34b831];return _0x25dedb;};'use strict';var pdf=require(_0x2b2a('0x0'));var emlformat=require(_0x2b2a('0x1'));var rimraf=require(_0x2b2a('0x2'));var zipdir=require(_0x2b2a('0x3'));var jsonpatch=require(_0x2b2a('0x4'));var rp=require('request-promise');var moment=require(_0x2b2a('0x5'));var BPromise=require(_0x2b2a('0x6'));var Mustache=require('mustache');var util=require(_0x2b2a('0x7'));var path=require(_0x2b2a('0x8'));var sox=require('sox');var csv=require(_0x2b2a('0x9'));var ejs=require(_0x2b2a('0xa'));var fs=require('fs');var _=require(_0x2b2a('0xb'));var squel=require(_0x2b2a('0xc'));var crypto=require(_0x2b2a('0xd'));var jsforce=require('jsforce');var deskjs=require(_0x2b2a('0xe'));var toCsv=require(_0x2b2a('0x9'));var querystring=require('querystring');var Papa=require(_0x2b2a('0xf'));var Redis=require('ioredis');var authService=require(_0x2b2a('0x10'));var qs=require(_0x2b2a('0x11'));var as=require(_0x2b2a('0x12'));var hardwareService=require(_0x2b2a('0x13'));var logger=require(_0x2b2a('0x14'))(_0x2b2a('0x15'));var utils=require(_0x2b2a('0x16'));var config=require(_0x2b2a('0x17'));var licenseUtil=require('../../config/license/util');var db=require(_0x2b2a('0x18'))['db'];config[_0x2b2a('0x19')]=_['defaults'](config[_0x2b2a('0x19')],{'host':_0x2b2a('0x1a'),'port':0x18eb});var socket=require(_0x2b2a('0x1b'))(new Redis(config[_0x2b2a('0x19')]));require(_0x2b2a('0x1c'))[_0x2b2a('0x1d')](socket);function respondWithStatusCode(_0x34e2b1,_0x43076f){_0x43076f=_0x43076f||0xcc;return function(_0x5c27c6){if(_0x5c27c6){return _0x34e2b1[_0x2b2a('0x1e')](_0x43076f);}return _0x34e2b1['status'](_0x43076f)[_0x2b2a('0x1f')]();};}function respondWithResult(_0x35cc9d,_0x1e15ba){_0x1e15ba=_0x1e15ba||0xc8;return function(_0x18d002){if(_0x18d002){return _0x35cc9d['status'](_0x1e15ba)[_0x2b2a('0x20')](_0x18d002);}};}function respondWithFilteredResult(_0x14d16e,_0x1a7284){return function(_0xe6b131){if(_0xe6b131){var _0x4fb5f7=_0xe6b131[_0x2b2a('0x21')],_0x56e053=_0x1a7284[_0x2b2a('0x22')],_0x1c4f30=_0x1a7284[_0x2b2a('0x22')]+_0x1a7284[_0x2b2a('0x23')],_0x1fba56;if(_0x1c4f30>=_0x4fb5f7){_0x1c4f30=_0x4fb5f7;_0x1fba56=0xc8;}else{_0x1fba56=0xce;}_0x14d16e[_0x2b2a('0x24')](_0x1fba56);return _0x14d16e[_0x2b2a('0x25')](_0x2b2a('0x26'),_0x56e053+'-'+_0x1c4f30+'/'+_0x4fb5f7)[_0x2b2a('0x20')](_0xe6b131);}return null;};}function patchUpdates(_0x4cf1cb){return function(_0x491c35){try{jsonpatch[_0x2b2a('0x27')](_0x491c35,_0x4cf1cb,!![]);}catch(_0xce6918){return BPromise[_0x2b2a('0x28')](_0xce6918);}return _0x491c35[_0x2b2a('0x29')]();};}function saveUpdates(_0x115fcb,_0xa5d41a){return function(_0x5b9dff){if(_0x5b9dff){return _0x5b9dff[_0x2b2a('0x2a')](_0x115fcb)[_0x2b2a('0x2b')](function(_0x2191a0){return _0x2191a0;});}return null;};}function removeEntity(_0x2421a7,_0x111dbd){return function(_0x1667d5){if(_0x1667d5){return _0x1667d5[_0x2b2a('0x2c')]()[_0x2b2a('0x2b')](function(){var _0x11486e=_0x1667d5[_0x2b2a('0x2d')]({'plain':!![]});var _0x3e597c=_0x2b2a('0x2e');return db[_0x2b2a('0x2f')][_0x2b2a('0x2c')]({'where':{'type':_0x3e597c,'resourceId':_0x11486e['id']}})[_0x2b2a('0x2b')](function(){return _0x1667d5;});})[_0x2b2a('0x2b')](function(){_0x2421a7['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x410d32,_0x2b8253){return function(_0x68c5cf){if(!_0x68c5cf){_0x410d32[_0x2b2a('0x1e')](0x194);}return _0x68c5cf;};}function handleError(_0x480555,_0x303de5){_0x303de5=_0x303de5||0x1f4;return function(_0x1714b8){logger[_0x2b2a('0x30')](_0x1714b8[_0x2b2a('0x31')]);if(_0x1714b8[_0x2b2a('0x32')]){delete _0x1714b8[_0x2b2a('0x32')];}_0x480555[_0x2b2a('0x24')](_0x303de5)[_0x2b2a('0x33')](_0x1714b8);};}exports['index']=function(_0x388712,_0x1067e9){var _0x18433e={},_0x2e3ea7={},_0x947d04={'count':0x0,'rows':[]};var _0x2c05f9=_[_0x2b2a('0x34')](db['SquareProject']['rawAttributes'],function(_0xc414e2){return{'name':_0xc414e2[_0x2b2a('0x35')],'type':_0xc414e2[_0x2b2a('0x36')][_0x2b2a('0x37')]};});_0x2e3ea7['model']=_[_0x2b2a('0x34')](_0x2c05f9,_0x2b2a('0x32'));_0x2e3ea7[_0x2b2a('0x38')]=_[_0x2b2a('0x39')](_0x388712[_0x2b2a('0x38')]);_0x2e3ea7[_0x2b2a('0x3a')]=_[_0x2b2a('0x3b')](_0x2e3ea7[_0x2b2a('0x3c')],_0x2e3ea7['query']);_0x18433e[_0x2b2a('0x3d')]=_[_0x2b2a('0x3b')](_0x2e3ea7[_0x2b2a('0x3c')],qs[_0x2b2a('0x3e')](_0x388712[_0x2b2a('0x38')][_0x2b2a('0x3e')]));_0x18433e['attributes']=_0x18433e[_0x2b2a('0x3d')][_0x2b2a('0x3f')]?_0x18433e[_0x2b2a('0x3d')]:_0x2e3ea7[_0x2b2a('0x3c')];if(!_0x388712[_0x2b2a('0x38')]['hasOwnProperty']('nolimit')){_0x18433e['limit']=qs[_0x2b2a('0x23')](_0x388712['query'][_0x2b2a('0x23')]);_0x18433e[_0x2b2a('0x22')]=qs[_0x2b2a('0x22')](_0x388712[_0x2b2a('0x38')][_0x2b2a('0x22')]);}_0x18433e[_0x2b2a('0x40')]=qs[_0x2b2a('0x41')](_0x388712[_0x2b2a('0x38')]['sort']);_0x18433e[_0x2b2a('0x42')]=qs[_0x2b2a('0x3a')](_[_0x2b2a('0x43')](_0x388712[_0x2b2a('0x38')],_0x2e3ea7[_0x2b2a('0x3a')]),_0x2c05f9);if(_0x388712['query'][_0x2b2a('0x44')]){_0x18433e['where']=_[_0x2b2a('0x45')](_0x18433e[_0x2b2a('0x42')],{'$or':_[_0x2b2a('0x34')](_0x2c05f9,function(_0x21dcb5){if(_0x21dcb5[_0x2b2a('0x36')]!==_0x2b2a('0x46')){var _0x5458e7={};_0x5458e7[_0x21dcb5[_0x2b2a('0x32')]]={'$like':'%'+_0x388712[_0x2b2a('0x38')][_0x2b2a('0x44')]+'%'};return _0x5458e7;}})});}_0x18433e=_[_0x2b2a('0x45')]({},_0x18433e,_0x388712[_0x2b2a('0x47')]);var _0x376b19={'where':_0x18433e[_0x2b2a('0x42')]};return db['SquareProject']['count'](_0x376b19)['then'](function(_0x5f09f3){_0x947d04[_0x2b2a('0x21')]=_0x5f09f3;if(_0x388712[_0x2b2a('0x38')][_0x2b2a('0x48')]){_0x18433e['include']=[{'all':!![]}];}return db[_0x2b2a('0x49')][_0x2b2a('0x4a')](_0x18433e);})['then'](function(_0xb0ea8){_0x947d04['rows']=_0xb0ea8;return _0x947d04;})[_0x2b2a('0x2b')](respondWithFilteredResult(_0x1067e9,_0x18433e))[_0x2b2a('0x4b')](handleError(_0x1067e9,null));};exports['show']=function(_0x2fe5d4,_0x174d39){var _0x4f7331={'raw':![],'where':{'id':_0x2fe5d4[_0x2b2a('0x4c')]['id']}},_0x5cab08={};_0x5cab08[_0x2b2a('0x3c')]=_[_0x2b2a('0x39')](db[_0x2b2a('0x49')][_0x2b2a('0x4d')]);_0x5cab08['query']=_[_0x2b2a('0x39')](_0x2fe5d4[_0x2b2a('0x38')]);_0x5cab08[_0x2b2a('0x3a')]=_['intersection'](_0x5cab08[_0x2b2a('0x3c')],_0x5cab08['query']);_0x4f7331[_0x2b2a('0x3d')]=_[_0x2b2a('0x3b')](_0x5cab08[_0x2b2a('0x3c')],qs[_0x2b2a('0x3e')](_0x2fe5d4[_0x2b2a('0x38')]['fields']));_0x4f7331[_0x2b2a('0x3d')]=_0x4f7331['attributes']['length']?_0x4f7331[_0x2b2a('0x3d')]:_0x5cab08[_0x2b2a('0x3c')];if(_0x2fe5d4[_0x2b2a('0x38')][_0x2b2a('0x48')]){_0x4f7331[_0x2b2a('0x4e')]=[{'all':!![]}];}_0x4f7331=_['merge']({},_0x4f7331,_0x2fe5d4[_0x2b2a('0x47')]);return db['SquareProject']['find'](_0x4f7331)[_0x2b2a('0x2b')](handleEntityNotFound(_0x174d39,null))[_0x2b2a('0x2b')](respondWithResult(_0x174d39,null))['catch'](handleError(_0x174d39,null));};exports[_0x2b2a('0x4f')]=function(_0x340a08,_0x57f513){return db['SquareProject'][_0x2b2a('0x4f')](_0x340a08[_0x2b2a('0x50')],{})[_0x2b2a('0x2b')](function(_0x2e2acd){var _0x3a1855=_0x340a08['user'][_0x2b2a('0x2d')]({'plain':!![]});if(!_0x3a1855)throw new Error(_0x2b2a('0x51'));if(_0x3a1855[_0x2b2a('0x52')]==='user'){var _0x5cc63e=_0x2e2acd[_0x2b2a('0x2d')]({'plain':!![]});var _0x1b07dc=_0x2b2a('0x2e');return db[_0x2b2a('0x53')][_0x2b2a('0x54')]({'where':{'name':_0x1b07dc,'userProfileId':_0x3a1855[_0x2b2a('0x55')]},'raw':!![]})[_0x2b2a('0x2b')](function(_0x34a641){if(_0x34a641&&_0x34a641['autoAssociation']===0x0){return db[_0x2b2a('0x2f')][_0x2b2a('0x4f')]({'name':_0x5cc63e[_0x2b2a('0x32')],'resourceId':_0x5cc63e['id'],'type':_0x34a641['name'],'sectionId':_0x34a641['id']},{})[_0x2b2a('0x2b')](function(){return _0x2e2acd;});}else{return _0x2e2acd;}})[_0x2b2a('0x4b')](function(_0x2042da){logger[_0x2b2a('0x30')](_0x2b2a('0x56'),_0x2042da);throw _0x2042da;});}return _0x2e2acd;})[_0x2b2a('0x2b')](respondWithResult(_0x57f513,0xc9))[_0x2b2a('0x4b')](handleError(_0x57f513,null));};exports[_0x2b2a('0x2a')]=function(_0x2c4e3f,_0x5d7ec3){if(_0x2c4e3f[_0x2b2a('0x50')]['id']){delete _0x2c4e3f[_0x2b2a('0x50')]['id'];}return db[_0x2b2a('0x49')][_0x2b2a('0x54')]({'where':{'id':_0x2c4e3f['params']['id']}})[_0x2b2a('0x2b')](handleEntityNotFound(_0x5d7ec3,null))[_0x2b2a('0x2b')](saveUpdates(_0x2c4e3f[_0x2b2a('0x50')],null))['then'](respondWithResult(_0x5d7ec3,null))['catch'](handleError(_0x5d7ec3,null));};exports[_0x2b2a('0x2c')]=function(_0x543156,_0x124424){return db[_0x2b2a('0x49')][_0x2b2a('0x54')]({'where':{'id':_0x543156[_0x2b2a('0x4c')]['id']}})[_0x2b2a('0x2b')](handleEntityNotFound(_0x124424,null))[_0x2b2a('0x2b')](removeEntity(_0x124424,null))[_0x2b2a('0x4b')](handleError(_0x124424,null));};exports[_0x2b2a('0x57')]=function(_0x57d3cf,_0x2abada,_0x29cd18){return db[_0x2b2a('0x49')]['find']({'where':{'id':_0x57d3cf[_0x2b2a('0x4c')]['id']}})[_0x2b2a('0x2b')](handleEntityNotFound(_0x2abada,null))['then'](function(_0x556712){if(_0x556712){return _0x556712[_0x2b2a('0x57')](_0x57d3cf['body'][_0x2b2a('0x58')],_['omit'](_0x57d3cf[_0x2b2a('0x50')],[_0x2b2a('0x58'),'id'])||{});}})['then'](respondWithResult(_0x2abada,null))[_0x2b2a('0x4b')](handleError(_0x2abada,null));};exports['removeUsers']=function(_0x45f63d,_0x175d53,_0xfc61c2){return db[_0x2b2a('0x49')][_0x2b2a('0x54')]({'where':{'id':_0x45f63d[_0x2b2a('0x4c')]['id']}})[_0x2b2a('0x2b')](handleEntityNotFound(_0x175d53,null))[_0x2b2a('0x2b')](function(_0x47554e){if(_0x47554e){return _0x47554e['removeUsers'](_0x45f63d[_0x2b2a('0x38')][_0x2b2a('0x58')])['then'](function(){if(_[_0x2b2a('0x59')](_0x45f63d[_0x2b2a('0x38')][_0x2b2a('0x58')])){for(var _0x95b08d=0x0;_0x95b08d<_0x45f63d[_0x2b2a('0x38')][_0x2b2a('0x58')][_0x2b2a('0x3f')];_0x95b08d+=0x1){socket['emit'](_0x2b2a('0x5a'),{'UserId':Number(_0x45f63d[_0x2b2a('0x38')]['ids'][_0x95b08d]),'SquareProjectId':Number(_0x45f63d['params']['id'])});}}else{socket['emit'](_0x2b2a('0x5a'),{'UserId':Number(_0x45f63d['query']['ids']),'SquareProjectId':Number(_0x45f63d[_0x2b2a('0x4c')]['id'])});}});}})[_0x2b2a('0x2b')](respondWithStatusCode(_0x175d53,null))['catch'](handleError(_0x175d53,null));};exports['getUsers']=function(_0x56b828,_0xa87ebf,_0x8ec8b3){var _0x285c8d={};var _0x4aec87={};var _0x217913;var _0x53c96e;return db[_0x2b2a('0x49')][_0x2b2a('0x5b')]({'where':{'id':_0x56b828[_0x2b2a('0x4c')]['id']}})[_0x2b2a('0x2b')](handleEntityNotFound(_0xa87ebf,null))[_0x2b2a('0x2b')](function(_0x18baa5){if(_0x18baa5){_0x217913=_0x18baa5;_0x4aec87[_0x2b2a('0x3c')]=_[_0x2b2a('0x39')](db[_0x2b2a('0x5c')][_0x2b2a('0x4d')]);_0x4aec87[_0x2b2a('0x38')]=_[_0x2b2a('0x39')](_0x56b828['query']);_0x4aec87[_0x2b2a('0x3a')]=_['intersection'](_0x4aec87['model'],_0x4aec87[_0x2b2a('0x38')]);_0x285c8d[_0x2b2a('0x3d')]=_[_0x2b2a('0x3b')](_0x4aec87['model'],qs[_0x2b2a('0x3e')](_0x56b828[_0x2b2a('0x38')][_0x2b2a('0x3e')]));_0x285c8d[_0x2b2a('0x3d')]=_0x285c8d[_0x2b2a('0x3d')][_0x2b2a('0x3f')]?_0x285c8d[_0x2b2a('0x3d')]:_0x4aec87[_0x2b2a('0x3c')];_0x285c8d[_0x2b2a('0x40')]=qs[_0x2b2a('0x41')](_0x56b828[_0x2b2a('0x38')]['sort']);_0x285c8d[_0x2b2a('0x42')]=qs[_0x2b2a('0x3a')](_[_0x2b2a('0x43')](_0x56b828['query'],_0x4aec87[_0x2b2a('0x3a')]));if(_0x56b828[_0x2b2a('0x38')][_0x2b2a('0x44')]){_0x285c8d['where']=_['merge'](_0x285c8d[_0x2b2a('0x42')],{'$or':_[_0x2b2a('0x34')](_0x285c8d[_0x2b2a('0x3d')],function(_0x48dbbf){var _0x523290={};_0x523290[_0x48dbbf]={'$like':'%'+_0x56b828[_0x2b2a('0x38')]['filter']+'%'};return _0x523290;})});}_0x285c8d=_[_0x2b2a('0x45')]({},_0x285c8d,_0x56b828[_0x2b2a('0x47')]);return _0x217913[_0x2b2a('0x5d')](_0x285c8d);}})[_0x2b2a('0x2b')](function(_0x135f60){if(_0x135f60){_0x53c96e=_0x135f60[_0x2b2a('0x3f')];if(!_0x56b828[_0x2b2a('0x38')][_0x2b2a('0x5e')](_0x2b2a('0x5f'))){_0x285c8d[_0x2b2a('0x23')]=qs['limit'](_0x56b828[_0x2b2a('0x38')][_0x2b2a('0x23')]);_0x285c8d[_0x2b2a('0x22')]=qs[_0x2b2a('0x22')](_0x56b828[_0x2b2a('0x38')][_0x2b2a('0x22')]);}return _0x217913[_0x2b2a('0x5d')](_0x285c8d);}})[_0x2b2a('0x2b')](function(_0xd3a370){if(_0xd3a370){return _0xd3a370?{'count':_0x53c96e,'rows':_0xd3a370}:null;}})[_0x2b2a('0x2b')](respondWithResult(_0xa87ebf,null))[_0x2b2a('0x4b')](handleError(_0xa87ebf,null));};