Fibinger Ádám
2020-07-31 7e1ea4d5fb16450ce81f9b7f39784e7a84b73f9b
commit | author | age
1d106f 1 <?php
7e1ea4 2 error_reporting(E_ALL);
3 ini_set('display_errors', 1);
1d106f 4 include 'vendor/autoload.php';
5
6 use TableGenerator\DataObject;
7 use Wargasz\FileHelper;
8
9 $twig = \Wargasz\TwigFactory::getEnvironment('templates/');
10
7e1ea4 11 $messages = [];
12
1d106f 13 if (!empty($_POST['teams_json']))
14 {
7e1ea4 15     $forceDownload = isset($_POST['force_download']) && $_POST['force_download'] == 'on';
16
1d106f 17     $parser = new \Wargasz\BattlefyTeamParser($_POST['teams_json']);
18
7e1ea4 19     $table = $parser->getTeamData($forceDownload);
20     $messages = $parser->getMessages();
1d106f 21
22     $cols = [
23         'team'          => 'Csapat Név',
7e1ea4 24         'name'          => ['Név',
25             function ($a, $originalRowData) {
26                 return '<a href="https://r6.tracker.network/profile/pc/' . $a . '">' . $a . '</a>';
27             }
28         ],
1d106f 29         'captain'       => ['Kapitány',
30             function ($a, $originalRowData) {
31                 return $a ? "Igen" : "Nem";
32             }
33         ],
34         'valid'         => [
35             'Valid',
36             function ($a, $originalRowData) {
37                 return $a ? $originalRowData['level'] >= 100 ? "Igen" : "Nem-LVL" : "Nem-NoUser";
38             }
39         ],
40         'level'         => 'LvL',
41         'alias_history' => 'Alias history'
42     ];
43
7e1ea4 44     file_put_contents(\Wargasz\BattlefyTeamParser::getWorkDir() . '/source-' . time() . '.json', $_POST['teams_json']);
45     file_put_contents(\Wargasz\BattlefyTeamParser::getWorkDir() . '/parsed.json', json_encode($parser->getParsedTeamData()));
46
47     //fixme: szétszedni, hogy ez ne a táblázatot írja meg egyből, hanem a nyers adatokat és azt olvassa vissza
1d106f 48     $do = new DataObject($cols, $table);
49
7e1ea4 50     $HTMLTable = (new \TableGenerator\Render\HTMLTable(['id' => 'ccup']))->setDataObject($do);
1d106f 51     ob_start();
52     $HTMLTable->renderTable();
53     $tableData = ob_get_clean();
54     file_put_contents('result.html', $tableData);
55 }
56 else
57 {
58     $tableData = file_get_contents('result.html');
59 }
60
7e1ea4 61 echo $twig->render('index.twig', [
62     'table'    => $tableData,
63     'messages' => $messages
64 ]);