[292] | 1 | <?php
|
---|
| 2 |
|
---|
| 3 | ini_set('memory_limit', '100M');
|
---|
| 4 |
|
---|
[666] | 5 | include_once(dirname(__FILE__).'/../../includes/global.php');
|
---|
| 6 | include_once(dirname(__FILE__).'/../../includes/zip.lib.php');
|
---|
| 7 |
|
---|
[558] | 8 | include_once('Export.php');
|
---|
| 9 | include_once('ExportOutput.php');
|
---|
[292] | 10 |
|
---|
[369] | 11 | //LoadCommandLineParameters();
|
---|
[666] | 12 | $System = new System();
|
---|
| 13 | $System->DoNotShowPage = true;
|
---|
| 14 | $System->Run();
|
---|
[292] | 15 |
|
---|
[670] | 16 | function SetProgres($Export,$per) {
|
---|
| 17 | $File = new FileStream();
|
---|
| 18 | $File->CreateFile($Export->TempDir.'progress');
|
---|
| 19 | $File->WriteLine(10);
|
---|
| 20 | }
|
---|
| 21 |
|
---|
[292] | 22 | while(1)
|
---|
| 23 | {
|
---|
[666] | 24 | //DBC files
|
---|
| 25 | $DbResult = $System->Database->query('SELECT `ExportTask`.`Export`, `Export`.`Id` AS `ExportId` FROM `ExportTask` LEFT JOIN `Export` ON `Export`.`Id` = `ExportTask`.`Export` WHERE `Export`.`OutputType` = 9 AND `ExportTask`.`TimeFinish` IS NULL');
|
---|
[455] | 26 | while($DbRow = $DbResult->fetch_assoc())
|
---|
[292] | 27 | {
|
---|
[391] | 28 | echo(StrFTime("%d/%m/%Y %H:%M:%S", time()).': Generování DBC souborů pro export '.$DbRow['ExportId'].'.. '."\n");
|
---|
[292] | 29 | if($DbRow['ExportId'] != '')
|
---|
[390] | 30 | {
|
---|
[297] | 31 | try
|
---|
| 32 | {
|
---|
| 33 | $Export = new Export($System);
|
---|
[403] | 34 | $Export->Id = $DbRow['ExportId'];
|
---|
[297] | 35 | $Export->Init();
|
---|
[670] | 36 |
|
---|
| 37 | SetProgres($Export,10);
|
---|
| 38 |
|
---|
[666] | 39 | echo('Mazání starých souborů...'."\n");
|
---|
[390] | 40 |
|
---|
| 41 | // Delete old files
|
---|
[666] | 42 | if(file_exists($Export->TempDir.'dbc/'))
|
---|
| 43 | {
|
---|
[391] | 44 | $Dir = opendir($Export->TempDir.'dbc/') ;
|
---|
| 45 | while(($File = readdir($Dir)) !== false)
|
---|
| 46 | {
|
---|
| 47 | if(($File != '..') and ($File != '.')) unlink($Export->TempDir.'dbc/'.$File);
|
---|
| 48 | }
|
---|
| 49 | closedir($Dir);
|
---|
[666] | 50 | }
|
---|
[390] | 51 | if(file_exists($Export->TempDir.'CzWoW_DBC.zip')) unlink($Export->TempDir.'CzWoW_DBC.zip');
|
---|
| 52 |
|
---|
[670] | 53 | SetProgres($Export,20);
|
---|
[297] | 54 | if(function_exists('gzcompress'))
|
---|
| 55 | {
|
---|
| 56 | $Export->ExportToDBC();
|
---|
[666] | 57 | echo('Komprese...'."\n");
|
---|
[403] | 58 | exec('zip -r -j '.$Export->TempDir.'CzWoW_DBC.zip '.$Export->TempDir.'dbc/');
|
---|
[391] | 59 | echo('Hotovo'."\n");
|
---|
[670] | 60 | SetProgres($Export,80);
|
---|
[391] | 61 | } else echo('Funkce pro tvorbu Zip souboru není podporována!'."\n");
|
---|
[455] | 62 | $System->Database->query('UPDATE `ExportTask` SET `TimeFinish`=NOW() WHERE `Export`='.$Export->Id);
|
---|
[297] | 63 | } catch (Exception $e)
|
---|
[292] | 64 | {
|
---|
[297] | 65 | echo 'Caught exception: ', $e->getMessage(), "\n";
|
---|
| 66 | }
|
---|
[670] | 67 | SetProgres($Export,100);
|
---|
[308] | 68 | } else
|
---|
| 69 | {
|
---|
[455] | 70 | $System->Database->query('DELETE FROM `ExportTask` WHERE `Export`='.$DbRow['Export']);
|
---|
[308] | 71 | echo('Export '.$DbRow['Export'].' nenalezen. Jeho úloha smazána.'."\n");
|
---|
| 72 | }
|
---|
[292] | 73 | }
|
---|
[666] | 74 |
|
---|
| 75 | //EXE files
|
---|
| 76 | $DbResult = $System->Database->query('SELECT `ExportTask`.`Export`, `Export`.`Id` AS `ExportId` FROM `ExportTask` LEFT JOIN `Export` ON `Export`.`Id` = `ExportTask`.`Export` WHERE `Export`.`OutputType` = 10 AND `ExportTask`.`TimeFinish` IS NULL');
|
---|
| 77 | while($DbRow = $DbResult->fetch_assoc())
|
---|
| 78 | {
|
---|
| 79 | echo(StrFTime("%d/%m/%Y %H:%M:%S", time()).': Generování EXE souboru pro export '.$DbRow['ExportId'].'.. '."\n");
|
---|
| 80 | if($DbRow['ExportId'] != '')
|
---|
| 81 | {
|
---|
| 82 | echo shell_exec('"'.dirname(__FILE__).'./client_cz_export.sh" '.$DbRow['ExportId'].'');
|
---|
| 83 | $System->Database->query('UPDATE `ExportTask` SET `TimeFinish`=NOW() WHERE `Export`='.$DbRow['Export']);
|
---|
| 84 | } else
|
---|
| 85 | {
|
---|
| 86 | $System->Database->query('DELETE FROM `ExportTask` WHERE `Export`='.$DbRow['Export']);
|
---|
| 87 | echo('Export '.$DbRow['Export'].' nenalezen. Jeho úloha smazána.'."\n");
|
---|
| 88 | }
|
---|
| 89 | }
|
---|
[391] | 90 | sleep($Config['ExportTaskProcessPeriod']);
|
---|
[292] | 91 | }
|
---|
| 92 |
|
---|
[357] | 93 | // WriteLog('Generování dbc úloh', LOG_TYPE_DOWNLOAD);
|
---|