www/export_miscs.php

changeset 801
55c2510891b8
parent 800
3775ee26657f
child 802
4a9f469d2201
equal deleted inserted replaced
800:3775ee26657f 801:55c2510891b8
1 <?php
2 require_once($_SERVER['DOCUMENT_ROOT'].'/config.php');
3 require_once($_SERVER['DOCUMENT_ROOT'].'/includes/formulas.php');
4
5
6 $link = mysqli_connect(DBASE_HOST,DBASE_USER,DBASE_PASS,DBASE_NAME);
7 if (! $link) {
8 die('Connect Error (' . mysqli_connect_errno() . ') ' . mysqli_connect_error());
9 }
10 if (! mysqli_set_charset($link, "utf8" )) {
11 echo "error";
12 return 1;
13 }
14
15 $result = mysqli_query($link, "SELECT * FROM inventory_miscs ORDER BY name");
16
17
18 $misctype = array( 'Spice', 'Herb', 'Flavor', 'Fining', 'Water agent', 'Yeast nutrient', 'Other' );
19 $miscuse = array( 'Starter', 'Mash', 'Boil', 'Primary', 'Secondary', 'Bottling' );
20
21
22
23 /*
24 * Create beerxml output
25 */
26 $xw = xmlwriter_open_memory();
27 xmlwriter_set_indent($xw, 1);
28 $res = xmlwriter_set_indent_string($xw, ' ');
29
30 xmlwriter_start_document($xw, '1.0', 'UTF-8');
31
32
33 xmlwriter_start_element($xw, 'MISCS');
34 while ($row = mysqli_fetch_array($result)) {
35
36 xmlwriter_start_element($xw, 'MISC');
37
38 xmlwriter_start_element($xw, 'VERSION');
39 xmlwriter_text($xw, '1');
40 xmlwriter_end_element($xw);
41
42 xmlwriter_start_element($xw, 'NAME');
43 xmlwriter_text($xw, $row['name']);
44 xmlwriter_end_element($xw);
45
46 xmlwriter_start_element($xw, 'TYPE');
47 xmlwriter_text($xw, $misctype[$row['type']]);
48 xmlwriter_end_element($xw);
49
50 xmlwriter_start_element($xw, 'AMOUNT_IS_WEIGHT');
51 ($row['amount_is_weight']) ? xmlwriter_text($xw, 'TRUE') : xmlwriter_text($xw, 'FALSE');
52 xmlwriter_end_element($xw);
53
54 xmlwriter_start_element($xw, 'USE');
55 xmlwriter_text($xw, $miscuse[$row['use_use']]);
56 xmlwriter_end_element($xw);
57
58 if (floatval($row['time']) > 0) {
59 xmlwriter_start_element($xw, 'TIME');
60 xmlwriter_text($xw, sprintf("%.3f",floatval($row['time'])));
61 xmlwriter_end_element($xw);
62 }
63
64 if (floatval($row['cost']) > 0) {
65 xmlwriter_start_element($xw, 'COST');
66 xmlwriter_text($xw, sprintf("%.5f",floatval($row['cost'])));
67 xmlwriter_end_element($xw);
68 }
69
70 xmlwriter_start_element($xw, 'ALWAYS_ON_STOCK');
71 ($row['always_on_stock']) ? xmlwriter_text($xw, 'TRUE') : xmlwriter_text($xw, 'FALSE');
72 xmlwriter_end_element($xw);
73
74 if (strlen($row['notes'])) {
75 xmlwriter_start_element($xw, 'NOTES');
76 xmlwriter_text($xw, $row['notes']);
77 xmlwriter_end_element($xw);
78 }
79
80 if (strlen($row['use_for'])) {
81 xmlwriter_start_element($xw, 'USE_FOR');
82 xmlwriter_text($xw, $row['use_for']);
83 xmlwriter_end_element($xw);
84 }
85
86 xmlwriter_end_element($xw); // MISC
87 }
88 xmlwriter_end_element($xw); // MISCS
89
90 $beerxml = xmlwriter_output_memory($xw);
91
92 Header('Content-type: text/xml');
93 header('Content-Disposition: attachment; filename="miscs.xml"');
94 header('Content-Transfer-Encoding: binary');
95 header('Expires: 0');
96 header('Pragma: no-cache');
97 header('Content-Length: '.strlen($beerxml));
98 exit($beerxml);

mercurial