Built motion from commit (unavailable).|2.4.18
[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 _0x6324=['sort','where','pick','filter','merge','type','VIRTUAL','options','count','includeAll','include','SquareProject','findAll','rows','catch','params','rawAttributes','find','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','userProfileId','autoAssociation','create','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','addUsers','ids','omit','removeUsers','emit','getUsers','findOne','order','html-pdf','eml-format','rimraf','zip-dir','request-promise','bluebird','util','sox','to-csv','ejs','lodash','crypto','jsforce','desk.js','querystring','papaparse','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','defaults','localhost','socket.io-emitter','redis','./squareProject.socket','sendStatus','status','json','offset','limit','set','Content-Range','apply','reject','save','update','then','destroy','get','SquareProjects','UserProfileResource','end','error','stack','name','index','map','fieldName','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit'];(function(_0x3a6e4b,_0x118cd9){var _0x36572d=function(_0x2a53cf){while(--_0x2a53cf){_0x3a6e4b['push'](_0x3a6e4b['shift']());}};_0x36572d(++_0x118cd9);}(_0x6324,0x142));var _0x4632=function(_0x24529e,_0x20b864){_0x24529e=_0x24529e-0x0;var _0x4f37ba=_0x6324[_0x24529e];return _0x4f37ba;};'use strict';var pdf=require(_0x4632('0x0'));var emlformat=require(_0x4632('0x1'));var rimraf=require(_0x4632('0x2'));var zipdir=require(_0x4632('0x3'));var jsonpatch=require('fast-json-patch');var rp=require(_0x4632('0x4'));var moment=require('moment');var BPromise=require(_0x4632('0x5'));var Mustache=require('mustache');var util=require(_0x4632('0x6'));var path=require('path');var sox=require(_0x4632('0x7'));var csv=require(_0x4632('0x8'));var ejs=require(_0x4632('0x9'));var fs=require('fs');var _=require(_0x4632('0xa'));var squel=require('squel');var crypto=require(_0x4632('0xb'));var jsforce=require(_0x4632('0xc'));var deskjs=require(_0x4632('0xd'));var toCsv=require('to-csv');var querystring=require(_0x4632('0xe'));var Papa=require(_0x4632('0xf'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0x4632('0x10'));var as=require(_0x4632('0x11'));var hardwareService=require(_0x4632('0x12'));var logger=require(_0x4632('0x13'))(_0x4632('0x14'));var utils=require(_0x4632('0x15'));var config=require(_0x4632('0x16'));var db=require(_0x4632('0x17'))['db'];config['redis']=_[_0x4632('0x18')](config['redis'],{'host':_0x4632('0x19'),'port':0x18eb});var socket=require(_0x4632('0x1a'))(new Redis(config[_0x4632('0x1b')]));require(_0x4632('0x1c'))['register'](socket);function respondWithStatusCode(_0x3ba361,_0x255882){_0x255882=_0x255882||0xcc;return function(_0x3b9901){if(_0x3b9901){return _0x3ba361[_0x4632('0x1d')](_0x255882);}return _0x3ba361[_0x4632('0x1e')](_0x255882)['end']();};}function respondWithResult(_0x47b349,_0x2fd7ae){_0x2fd7ae=_0x2fd7ae||0xc8;return function(_0x38bedd){if(_0x38bedd){return _0x47b349[_0x4632('0x1e')](_0x2fd7ae)[_0x4632('0x1f')](_0x38bedd);}};}function respondWithFilteredResult(_0x48fbb1,_0x158831){return function(_0x113872){if(_0x113872){var _0x1a94c0=_0x113872['count'],_0x5b28b7=_0x158831['offset'],_0x3cddfa=_0x158831[_0x4632('0x20')]+_0x158831[_0x4632('0x21')],_0x1894bb;if(_0x3cddfa>=_0x1a94c0){_0x3cddfa=_0x1a94c0;_0x1894bb=0xc8;}else{_0x1894bb=0xce;}_0x48fbb1[_0x4632('0x1e')](_0x1894bb);return _0x48fbb1[_0x4632('0x22')](_0x4632('0x23'),_0x5b28b7+'-'+_0x3cddfa+'/'+_0x1a94c0)[_0x4632('0x1f')](_0x113872);}return null;};}function patchUpdates(_0x9ab826){return function(_0x468ccb){try{jsonpatch[_0x4632('0x24')](_0x468ccb,_0x9ab826,!![]);}catch(_0x3ea0d1){return BPromise[_0x4632('0x25')](_0x3ea0d1);}return _0x468ccb[_0x4632('0x26')]();};}function saveUpdates(_0x2ca6a5,_0x263907){return function(_0x4cfebc){if(_0x4cfebc){return _0x4cfebc[_0x4632('0x27')](_0x2ca6a5)[_0x4632('0x28')](function(_0x3537ed){return _0x3537ed;});}return null;};}function removeEntity(_0x380a9f,_0x1e1b86){return function(_0x38cbbc){if(_0x38cbbc){return _0x38cbbc[_0x4632('0x29')]()[_0x4632('0x28')](function(){var _0x259c75=_0x38cbbc[_0x4632('0x2a')]({'plain':!![]});var _0x1b8de0=_0x4632('0x2b');return db[_0x4632('0x2c')][_0x4632('0x29')]({'where':{'type':_0x1b8de0,'resourceId':_0x259c75['id']}})[_0x4632('0x28')](function(){return _0x38cbbc;});})[_0x4632('0x28')](function(){_0x380a9f[_0x4632('0x1e')](0xcc)[_0x4632('0x2d')]();});}};}function handleEntityNotFound(_0x4d9098,_0x57798a){return function(_0x466126){if(!_0x466126){_0x4d9098[_0x4632('0x1d')](0x194);}return _0x466126;};}function handleError(_0x2f6656,_0x35a533){_0x35a533=_0x35a533||0x1f4;return function(_0x34079f){logger[_0x4632('0x2e')](_0x34079f[_0x4632('0x2f')]);if(_0x34079f['name']){delete _0x34079f[_0x4632('0x30')];}_0x2f6656[_0x4632('0x1e')](_0x35a533)['send'](_0x34079f);};}exports[_0x4632('0x31')]=function(_0x5316f7,_0x6599ad){var _0x4cb661={},_0x4fda35={},_0x1973eb={'count':0x0,'rows':[]};var _0x1cd26a=_[_0x4632('0x32')](db['SquareProject']['rawAttributes'],function(_0x395f4e){return{'name':_0x395f4e[_0x4632('0x33')],'type':_0x395f4e['type']['key']};});_0x4fda35[_0x4632('0x34')]=_[_0x4632('0x32')](_0x1cd26a,'name');_0x4fda35[_0x4632('0x35')]=_[_0x4632('0x36')](_0x5316f7[_0x4632('0x35')]);_0x4fda35[_0x4632('0x37')]=_[_0x4632('0x38')](_0x4fda35['model'],_0x4fda35[_0x4632('0x35')]);_0x4cb661[_0x4632('0x39')]=_['intersection'](_0x4fda35['model'],qs[_0x4632('0x3a')](_0x5316f7['query']['fields']));_0x4cb661[_0x4632('0x39')]=_0x4cb661['attributes'][_0x4632('0x3b')]?_0x4cb661[_0x4632('0x39')]:_0x4fda35[_0x4632('0x34')];if(!_0x5316f7['query'][_0x4632('0x3c')](_0x4632('0x3d'))){_0x4cb661[_0x4632('0x21')]=qs[_0x4632('0x21')](_0x5316f7[_0x4632('0x35')]['limit']);_0x4cb661['offset']=qs[_0x4632('0x20')](_0x5316f7[_0x4632('0x35')][_0x4632('0x20')]);}_0x4cb661['order']=qs['sort'](_0x5316f7['query'][_0x4632('0x3e')]);_0x4cb661[_0x4632('0x3f')]=qs['filters'](_[_0x4632('0x40')](_0x5316f7[_0x4632('0x35')],_0x4fda35[_0x4632('0x37')]));if(_0x5316f7[_0x4632('0x35')][_0x4632('0x41')]){_0x4cb661[_0x4632('0x3f')]=_[_0x4632('0x42')](_0x4cb661[_0x4632('0x3f')],{'$or':_[_0x4632('0x32')](_0x1cd26a,function(_0x2c04a8){if(_0x2c04a8[_0x4632('0x43')]!==_0x4632('0x44')){var _0x47f206={};_0x47f206[_0x2c04a8[_0x4632('0x30')]]={'$like':'%'+_0x5316f7[_0x4632('0x35')]['filter']+'%'};return _0x47f206;}})});}_0x4cb661=_[_0x4632('0x42')]({},_0x4cb661,_0x5316f7[_0x4632('0x45')]);var _0x596d55={'where':_0x4cb661[_0x4632('0x3f')]};return db['SquareProject'][_0x4632('0x46')](_0x596d55)[_0x4632('0x28')](function(_0x1bfb36){_0x1973eb[_0x4632('0x46')]=_0x1bfb36;if(_0x5316f7['query'][_0x4632('0x47')]){_0x4cb661[_0x4632('0x48')]=[{'all':!![]}];}return db[_0x4632('0x49')][_0x4632('0x4a')](_0x4cb661);})['then'](function(_0x5b3fa9){_0x1973eb[_0x4632('0x4b')]=_0x5b3fa9;return _0x1973eb;})[_0x4632('0x28')](respondWithFilteredResult(_0x6599ad,_0x4cb661))[_0x4632('0x4c')](handleError(_0x6599ad,null));};exports['show']=function(_0x330f21,_0x1467c8){var _0x66598d={'raw':![],'where':{'id':_0x330f21[_0x4632('0x4d')]['id']}},_0xf4acf3={};_0xf4acf3[_0x4632('0x34')]=_[_0x4632('0x36')](db['SquareProject'][_0x4632('0x4e')]);_0xf4acf3[_0x4632('0x35')]=_[_0x4632('0x36')](_0x330f21[_0x4632('0x35')]);_0xf4acf3[_0x4632('0x37')]=_['intersection'](_0xf4acf3['model'],_0xf4acf3[_0x4632('0x35')]);_0x66598d[_0x4632('0x39')]=_[_0x4632('0x38')](_0xf4acf3[_0x4632('0x34')],qs['fields'](_0x330f21[_0x4632('0x35')][_0x4632('0x3a')]));_0x66598d[_0x4632('0x39')]=_0x66598d[_0x4632('0x39')][_0x4632('0x3b')]?_0x66598d['attributes']:_0xf4acf3[_0x4632('0x34')];if(_0x330f21[_0x4632('0x35')][_0x4632('0x47')]){_0x66598d[_0x4632('0x48')]=[{'all':!![]}];}_0x66598d=_[_0x4632('0x42')]({},_0x66598d,_0x330f21[_0x4632('0x45')]);return db[_0x4632('0x49')][_0x4632('0x4f')](_0x66598d)[_0x4632('0x28')](handleEntityNotFound(_0x1467c8,null))[_0x4632('0x28')](respondWithResult(_0x1467c8,null))[_0x4632('0x4c')](handleError(_0x1467c8,null));};exports['create']=function(_0xc3ffd0,_0x1ccadb){return db[_0x4632('0x49')]['create'](_0xc3ffd0[_0x4632('0x50')],{})[_0x4632('0x28')](function(_0x1309aa){var _0x2db3c8=_0xc3ffd0[_0x4632('0x51')][_0x4632('0x2a')]({'plain':!![]});if(!_0x2db3c8)throw new Error(_0x4632('0x52'));if(_0x2db3c8[_0x4632('0x53')]===_0x4632('0x51')){var _0x1aa831=_0x1309aa['get']({'plain':!![]});var _0x35afe5=_0x4632('0x2b');return db['UserProfileSection'][_0x4632('0x4f')]({'where':{'name':_0x35afe5,'userProfileId':_0x2db3c8[_0x4632('0x54')]},'raw':!![]})[_0x4632('0x28')](function(_0x28e7fb){if(_0x28e7fb&&_0x28e7fb[_0x4632('0x55')]===0x0){return db[_0x4632('0x2c')][_0x4632('0x56')]({'name':_0x1aa831[_0x4632('0x30')],'resourceId':_0x1aa831['id'],'type':_0x28e7fb[_0x4632('0x30')],'sectionId':_0x28e7fb['id']},{})[_0x4632('0x28')](function(){return _0x1309aa;});}else{return _0x1309aa;}})[_0x4632('0x4c')](function(_0x2a50f7){logger[_0x4632('0x2e')](_0x4632('0x57'),_0x2a50f7);throw _0x2a50f7;});}return _0x1309aa;})[_0x4632('0x28')](respondWithResult(_0x1ccadb,0xc9))[_0x4632('0x4c')](handleError(_0x1ccadb,null));};exports[_0x4632('0x27')]=function(_0x6c2864,_0xb1456b){if(_0x6c2864[_0x4632('0x50')]['id']){delete _0x6c2864['body']['id'];}return db[_0x4632('0x49')][_0x4632('0x4f')]({'where':{'id':_0x6c2864[_0x4632('0x4d')]['id']}})[_0x4632('0x28')](handleEntityNotFound(_0xb1456b,null))[_0x4632('0x28')](saveUpdates(_0x6c2864[_0x4632('0x50')],null))['then'](respondWithResult(_0xb1456b,null))[_0x4632('0x4c')](handleError(_0xb1456b,null));};exports[_0x4632('0x29')]=function(_0x41409d,_0x5877b9){return db[_0x4632('0x49')][_0x4632('0x4f')]({'where':{'id':_0x41409d['params']['id']}})[_0x4632('0x28')](handleEntityNotFound(_0x5877b9,null))[_0x4632('0x28')](removeEntity(_0x5877b9,null))[_0x4632('0x4c')](handleError(_0x5877b9,null));};exports['addUsers']=function(_0x3aeefd,_0x334a8e,_0x2551ca){return db[_0x4632('0x49')][_0x4632('0x4f')]({'where':{'id':_0x3aeefd[_0x4632('0x4d')]['id']}})[_0x4632('0x28')](handleEntityNotFound(_0x334a8e,null))[_0x4632('0x28')](function(_0x2965df){if(_0x2965df){return _0x2965df[_0x4632('0x58')](_0x3aeefd['body'][_0x4632('0x59')],_[_0x4632('0x5a')](_0x3aeefd['body'],[_0x4632('0x59'),'id'])||{});}})['then'](respondWithResult(_0x334a8e,null))['catch'](handleError(_0x334a8e,null));};exports[_0x4632('0x5b')]=function(_0x1b9540,_0x2451ba,_0xd89124){return db[_0x4632('0x49')][_0x4632('0x4f')]({'where':{'id':_0x1b9540[_0x4632('0x4d')]['id']}})[_0x4632('0x28')](handleEntityNotFound(_0x2451ba,null))[_0x4632('0x28')](function(_0x2eacee){if(_0x2eacee){return _0x2eacee[_0x4632('0x5b')](_0x1b9540[_0x4632('0x35')][_0x4632('0x59')])[_0x4632('0x28')](function(){if(_['isArray'](_0x1b9540['query'][_0x4632('0x59')])){for(var _0x313dcd=0x0;_0x313dcd<_0x1b9540[_0x4632('0x35')][_0x4632('0x59')][_0x4632('0x3b')];_0x313dcd+=0x1){socket[_0x4632('0x5c')]('userSquareProject:remove',{'UserId':Number(_0x1b9540[_0x4632('0x35')][_0x4632('0x59')][_0x313dcd]),'SquareProjectId':Number(_0x1b9540[_0x4632('0x4d')]['id'])});}}else{socket[_0x4632('0x5c')]('userSquareProject:remove',{'UserId':Number(_0x1b9540['query'][_0x4632('0x59')]),'SquareProjectId':Number(_0x1b9540['params']['id'])});}});}})[_0x4632('0x28')](respondWithStatusCode(_0x2451ba,null))[_0x4632('0x4c')](handleError(_0x2451ba,null));};exports[_0x4632('0x5d')]=function(_0x35143e,_0xc5515f,_0x5e5669){var _0x61aa92={};var _0x1cd108={};var _0x57670c;var _0x57bca2;return db[_0x4632('0x49')][_0x4632('0x5e')]({'where':{'id':_0x35143e[_0x4632('0x4d')]['id']}})[_0x4632('0x28')](handleEntityNotFound(_0xc5515f,null))['then'](function(_0x5a2cc1){if(_0x5a2cc1){_0x57670c=_0x5a2cc1;_0x1cd108['model']=_[_0x4632('0x36')](db['User'][_0x4632('0x4e')]);_0x1cd108[_0x4632('0x35')]=_[_0x4632('0x36')](_0x35143e[_0x4632('0x35')]);_0x1cd108[_0x4632('0x37')]=_[_0x4632('0x38')](_0x1cd108[_0x4632('0x34')],_0x1cd108[_0x4632('0x35')]);_0x61aa92[_0x4632('0x39')]=_[_0x4632('0x38')](_0x1cd108[_0x4632('0x34')],qs[_0x4632('0x3a')](_0x35143e[_0x4632('0x35')][_0x4632('0x3a')]));_0x61aa92[_0x4632('0x39')]=_0x61aa92[_0x4632('0x39')]['length']?_0x61aa92[_0x4632('0x39')]:_0x1cd108[_0x4632('0x34')];_0x61aa92[_0x4632('0x5f')]=qs[_0x4632('0x3e')](_0x35143e[_0x4632('0x35')][_0x4632('0x3e')]);_0x61aa92[_0x4632('0x3f')]=qs[_0x4632('0x37')](_[_0x4632('0x40')](_0x35143e[_0x4632('0x35')],_0x1cd108[_0x4632('0x37')]));if(_0x35143e[_0x4632('0x35')][_0x4632('0x41')]){_0x61aa92['where']=_[_0x4632('0x42')](_0x61aa92[_0x4632('0x3f')],{'$or':_[_0x4632('0x32')](_0x61aa92[_0x4632('0x39')],function(_0x3ddaab){var _0x335e9d={};_0x335e9d[_0x3ddaab]={'$like':'%'+_0x35143e['query'][_0x4632('0x41')]+'%'};return _0x335e9d;})});}_0x61aa92=_[_0x4632('0x42')]({},_0x61aa92,_0x35143e['options']);return _0x57670c[_0x4632('0x5d')](_0x61aa92);}})[_0x4632('0x28')](function(_0x879c8){if(_0x879c8){_0x57bca2=_0x879c8[_0x4632('0x3b')];if(!_0x35143e[_0x4632('0x35')]['hasOwnProperty'](_0x4632('0x3d'))){_0x61aa92[_0x4632('0x21')]=qs[_0x4632('0x21')](_0x35143e['query'][_0x4632('0x21')]);_0x61aa92[_0x4632('0x20')]=qs[_0x4632('0x20')](_0x35143e[_0x4632('0x35')][_0x4632('0x20')]);}return _0x57670c[_0x4632('0x5d')](_0x61aa92);}})[_0x4632('0x28')](function(_0x295b86){if(_0x295b86){return _0x295b86?{'count':_0x57bca2,'rows':_0x295b86}:null;}})['then'](respondWithResult(_0xc5515f,null))[_0x4632('0x4c')](handleError(_0xc5515f,null));};