Built motion from commit (unavailable).|2.0.79
[motion2.git] / server / components / export / pdf.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 _0x282f=['join','mkdirSync','each','format','name','startDate','endDate','header','body','toString','content','/fonts/Roboto-Regular.ttf','/fonts/Roboto-Medium.ttf','/fonts/Roboto-Italic.ttf','/fonts/Roboto-MediumItalic.ttf','createPdfKitDocument','%s.%s','pipe','createWriteStream','error','log','end','zip','info','Extraction\x20report\x20with\x20id\x20%d\x20in\x20%s\x20format\x20completed','CSV','Completed','pdf','Start\x20extraction\x20report\x20with\x20id\x20%d\x20in\x20%s\x20format','AnalyticExtractedReport','findOne','SELECT\x20count(*)\x20as\x20num\x20FROM\x20(%s)\x20t','Error\x20during\x20extraction\x20report\x20with\x20id\x20%d\x20in\x20%s\x20format','PDF','inspect','Failed','lodash','bluebird','util','path','moment','pdfmake/src/printer','zip-dir','../../mysqldb','dbH','../../config/logger','analytics','argv','MMMM\x20Do\x20YYYY,\x20h:mm:ss\x20a','savename','update','hasOwnProperty','push','tableHeader','num','Empty','dirname','basename','.pdf','Setting','find','split','splitSizePdf','then','query','%s\x20limit\x20%d\x20OFFSET\x20%d','sequelize','QueryTypes','SELECT','length','existsSync'];(function(_0x36ed48,_0x1ee0d4){var _0x51c63a=function(_0x2d0a40){while(--_0x2d0a40){_0x36ed48['push'](_0x36ed48['shift']());}};_0x51c63a(++_0x1ee0d4);}(_0x282f,0x140));var _0xf282=function(_0x3b0fb9,_0x3ef1d3){_0x3b0fb9=_0x3b0fb9-0x0;var _0x439d30=_0x282f[_0x3b0fb9];return _0x439d30;};'use strict';var _=require(_0xf282('0x0'));var fs=require('fs');var BPromise=require(_0xf282('0x1'));var util=require(_0xf282('0x2'));var path=require(_0xf282('0x3'));var moment=require(_0xf282('0x4'));var PdfPrinter=require(_0xf282('0x5'));var zipdir=require(_0xf282('0x6'));var rimraf=require('rimraf');var db=require('../../mysqldb')['db'];var dbH=require(_0xf282('0x7'))[_0xf282('0x8')];var logger=require(_0xf282('0x9'))(_0xf282('0xa'));var EXTRACTED_REPORT_ID=Number(process[_0xf282('0xb')][0x2]);var QUERY=process[_0xf282('0xb')][0x3];var PATH=process['argv'][0x4];var NAME=process[_0xf282('0xb')][0x5];var FORMAT=_0xf282('0xc');var _extractedReport;function analyticExtractedReport(_0xeb09d4,_0xb2cb46){var _0x55aaec={'status':_0xeb09d4};var _0x158fbc={'where':{'id':EXTRACTED_REPORT_ID}};if(_0xb2cb46){_0x55aaec[_0xf282('0xd')]=_0xb2cb46;}return db['AnalyticExtractedReport'][_0xf282('0xe')](_0x55aaec,_0x158fbc);}function getHeader(_0x92475f){var _0x4ffe29=[];for(var _0x502256 in _0x92475f){if(_0x92475f[_0xf282('0xf')](_0x502256)){_0x4ffe29[_0xf282('0x10')]({'text':_0x502256,'style':_0xf282('0x11')});}}return _0x4ffe29;}function extractReport(_0x513815){var _0x13add4=0x1388;var _0x28aae7;if(!_0x513815[0x0][_0xf282('0x12')]){return analyticExtractedReport(_0xf282('0x13'));}var _0x1e329e=[];var _0x522c7c=0x0;var _0x17d45e=!![];var _0x15a1bf=path[_0xf282('0x14')](PATH);var _0x20d16b=path[_0xf282('0x15')](PATH,_0xf282('0x16'));var _0x2fc30b=![];var _0x2b9f79=[];return db[_0xf282('0x17')][_0xf282('0x18')]({'where':{'id':0x1},'raw':!![],'attributes':['id',_0xf282('0x19'),_0xf282('0x1a')]})[_0xf282('0x1b')](function(_0x91b75a){if(_0x91b75a){_0x28aae7=_0x91b75a;_0x13add4=_0x28aae7[_0xf282('0x1a')]||0x3e8;}})[_0xf282('0x1b')](function(){if(_0x513815&&_0x513815['length']){var _0x4423df=_0x513815[0x0][_0xf282('0x12')]%(_0x522c7c+_0x13add4);if(_0x28aae7[_0xf282('0x19')]){for(;_0x17d45e;_0x522c7c+=_0x13add4,_0x4423df=_0x513815[0x0][_0xf282('0x12')]%(_0x522c7c+_0x13add4)){if(_0x4423df==0x0||_0x4423df==_0x513815[0x0][_0xf282('0x12')]){_0x17d45e=![];}_0x1e329e[_0xf282('0x10')](dbH['sequelize'][_0xf282('0x1c')](util['format'](_0xf282('0x1d'),QUERY,_0x13add4,_0x522c7c),{'type':dbH[_0xf282('0x1e')][_0xf282('0x1f')][_0xf282('0x20')]}));}}else{_0x1e329e[_0xf282('0x10')](dbH[_0xf282('0x1e')]['query'](QUERY,{'type':dbH[_0xf282('0x1e')]['QueryTypes'][_0xf282('0x20')]}));}}_0x2fc30b=_0x28aae7[_0xf282('0x19')]&&_0x1e329e[_0xf282('0x21')]>0x1;if(!fs[_0xf282('0x22')](path[_0xf282('0x23')](_0x15a1bf,_0x20d16b))&&_0x2fc30b){fs[_0xf282('0x24')](path[_0xf282('0x23')](_0x15a1bf,_0x20d16b));}return BPromise['each'](_0x1e329e,function(_0x3d3c73){_0x2b9f79[_0xf282('0x10')](_0x3d3c73);});})['then'](function(){return BPromise[_0xf282('0x25')](_0x1e329e,function(_0x2b1b58,_0xadbd6){var _0xdd7a2b;var _0x140c9b=util[_0xf282('0x26')]('Name:\x20%s\x0aReport:\x20%s\x0aFrom:\x20%s\x20To:\x20%s',NAME,_extractedReport[_0xf282('0x27')],moment(_extractedReport[_0xf282('0x28')])[_0xf282('0x26')](FORMAT),moment(_extractedReport[_0xf282('0x29')])[_0xf282('0x26')](FORMAT));var _0x2f5199={'pageSize':'A4','pageOrientation':'landscape','content':[{'text':_0x140c9b,'style':_0xf282('0x2a')}],'styles':{'header':{'fontSize':0x12,'bold':!![],'margin':[0x0,0x0,0x0,0xa]},'tableHeader':{'bold':!![],'fontSize':0xd,'color':'black'}}};var _0x3f4611={'headerRows':0x1,'body':[]};_0x3f4611[_0xf282('0x2b')][_0xf282('0x10')](getHeader(_0x2b1b58[0x0]));var _0x37c091;for(var _0x53ec35=0x0;_0x53ec35<_0x2b1b58[_0xf282('0x21')];_0x53ec35+=0x1){_0x37c091=[];for(var _0x16d28e in _0x2b1b58[_0x53ec35]){if(_0x2b1b58[_0x53ec35]['hasOwnProperty'](_0x16d28e)){_0x37c091[_0xf282('0x10')](_0x2b1b58[_0x53ec35][_0x16d28e]?_[_0xf282('0x2c')](_0x2b1b58[_0x53ec35][_0x16d28e]):'');}}_0x3f4611[_0xf282('0x2b')][_0xf282('0x10')](_0x37c091);}_0x2f5199[_0xf282('0x2d')][_0xf282('0x10')]({'table':_0x3f4611});return new BPromise(function(_0x5b95cc,_0x179010){var _0x528146=new PdfPrinter({'Roboto':{'normal':__dirname+_0xf282('0x2e'),'bold':__dirname+_0xf282('0x2f'),'italics':__dirname+_0xf282('0x30'),'bolditalics':__dirname+_0xf282('0x31')}});var _0xf786a3=_0x528146[_0xf282('0x32')](_0x2f5199);if(_0x2fc30b){_0xdd7a2b=path[_0xf282('0x23')](_0x15a1bf,_0x20d16b,util[_0xf282('0x26')]('%s%d.%s',_0x20d16b,_0xadbd6,'pdf'));}else{_0xdd7a2b=path[_0xf282('0x23')](_0x15a1bf,util[_0xf282('0x26')](_0xf282('0x33'),_0x20d16b,'pdf'));}var _0x2d156f=_0xf786a3[_0xf282('0x34')](fs[_0xf282('0x35')](_0xdd7a2b));_0x2d156f['on']('finish',function(){_0x5b95cc();});_0x2d156f['on'](_0xf282('0x36'),function(_0x3f828c){console[_0xf282('0x37')]('err',_0x3f828c);_0x179010(_0x3f828c);});_0xf786a3[_0xf282('0x38')]();});});})[_0xf282('0x1b')](function(){if(_0x2fc30b){return new BPromise(function(_0xe55864,_0x4506f2){zipdir(path[_0xf282('0x23')](_0x15a1bf,_0x20d16b),{'saveTo':path['join'](_0x15a1bf,util[_0xf282('0x26')](_0xf282('0x33'),_0x20d16b,_0xf282('0x39')))},function(_0x569f1e){if(_0x569f1e){_0x4506f2(_0x569f1e);}else{_0xe55864();}});});}})[_0xf282('0x1b')](function(){if(_0x2fc30b){rimraf(path[_0xf282('0x23')](_0x15a1bf,_0x20d16b),function(){});}})[_0xf282('0x1b')](function(){logger[_0xf282('0x3a')](util[_0xf282('0x26')](_0xf282('0x3b'),EXTRACTED_REPORT_ID,_0xf282('0x3c')));return analyticExtractedReport(_0xf282('0x3d'),_0x2fc30b?util[_0xf282('0x26')](_0xf282('0x33'),_0x20d16b,_0x2fc30b?_0xf282('0x39'):_0xf282('0x3e')):null);});}function main(){logger[_0xf282('0x3a')](util[_0xf282('0x26')](_0xf282('0x3f'),EXTRACTED_REPORT_ID,'PDF'));return db[_0xf282('0x40')][_0xf282('0x41')]({'where':{'id':EXTRACTED_REPORT_ID}})[_0xf282('0x1b')](function(_0x154388){_extractedReport=_0x154388;return dbH[_0xf282('0x1e')][_0xf282('0x1c')](util['format'](_0xf282('0x42'),QUERY),{'type':dbH[_0xf282('0x1e')][_0xf282('0x1f')][_0xf282('0x20')]});})[_0xf282('0x1b')](extractReport)['catch'](function(_0x7b25ff){logger[_0xf282('0x3a')](util[_0xf282('0x26')](_0xf282('0x43'),EXTRACTED_REPORT_ID,_0xf282('0x44')),util[_0xf282('0x45')](_0x7b25ff,{'showHidden':![],'depth':null}));return analyticExtractedReport(_0xf282('0x46'));});}main();