-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathchartsettings2.php
More file actions
359 lines (249 loc) · 13 KB
/
chartsettings2.php
File metadata and controls
359 lines (249 loc) · 13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
<?php
$date = $_REQUEST['date'];
//$date = '2011-07-06';
include('constants.php');
$aurora_data = get_data($date);
$dom=new DOMDocument('1.0','UTF-8');
$settings = $dom->createElement('settings');
$settingsNode = $dom->appendChild($settings);
$margins = $dom->createElement('margins', '5');
$marginsNode = $settings->appendChild($margins);
$addTimeStamp = $dom->createElement('add_time_stamp', 'true');
$addTimeStampNode = $settings->appendChild($addTimeStamp);
$maxSeries = $dom->createElement('max_series', '150');
$maxSeriesNode = $settings->appendChild($maxSeries);
$equalSpacing = $dom->createElement('equal_spacing', 'false');
$equalSpacingNode = $settings->appendChild($equalSpacing);
$legendPosition = $dom->createElement('legend_position', 'top');
$legendPositionNode = $settings->appendChild($legendPosition);
$legendWidth = $dom->createElement('legend_width', '85');
$legendWidthNode = $settings->appendChild($legendWidth);
$dataReload = $dom->createElement('data_reloading');
$dataReloadNode = $settings->appendChild($dataReload);
$interval = $dom->createElement('interval', '300');
$intervalNode = $dataReload->appendChild($interval);
$formatNumber = $dom->createElement('number_format');
$formatNumberNode = $settings->appendChild($formatNumber);
$decimalSeparator = $dom->createElement('decimal_separator', '.');
$decimalSeparatorNode = $formatNumber->appendChild($decimalSeparator);
$thousandsSeparator = $dom->createElement('thousand_separator', 'none');
$thousandsSeparatorNode = $formatNumber->appendChild($thousandsSeparator);
$datasets = $dom->createElement('data_sets');
$datasetsNode = $settings->appendChild($datasets);
$dataset = $dom->createElement('data_set');
$datasetNode = $datasets->appendChild($dataset);
$datasetNode->setAttribute('did', '0');
$color = $dom->createElement('color', '006699');
$colorNode = $dataset->appendChild($color);
$csv = $dom->createElement('csv');
$csvNode = $dataset->appendChild($csv);
$reverse = $dom->createElement('reverse', 'false');
$reverseNode = $csv->appendChild($reverse);
$separator = $dom->createElement('separator', ',');
$separatorNode = $csv->appendChild($separator);
$skipFirstRows = $dom->createElement('skip_first_rows', '2');
$skipFirstRowsNode = $csv->appendChild($skipFirstRows);
$dateFormat = $dom->createElement('date_format', 'YYYY-MM-DD hh:mm');
$dateFormatNode = $csv->appendChild($dateFormat);
$columns = $dom->createElement('columns');
$columnsNode = $csv->appendChild($columns);
foreach($aurora_data['columns'] as $heading) {
$column = $dom->createElement('column', $heading);
$columnNode = $columns->appendChild($column);
}
$data = $dom->createElement('file_name', $DATA_DIR);
$dataNode = $csv->appendChild($data);
//$data = $dom->createElement('data', $aurora_data['data']);
//$dataNode = $csv->appendChild($data);
$charts = $dom->createElement('charts');
$chartsNode = $settings->appendChild($charts);
$chart_counter = 0;
$total_charts = (count($aurora_data['charts'])-1);
foreach ($aurora_data['charts'] as $needed_chart) {
$chart = $dom->createElement('chart');
$chartNode = $charts->appendChild($chart);
$chartNode->setAttribute('cid', $chart_counter);
$chartTitle = $dom->createElement('title', $needed_chart['title']);
$chartTitleNode = $chart->appendChild($chartTitle);
$border = $dom->createElement('border_color', '006699');
$borderNode = $chart->appendChild($border);
$grid = $dom->createElement('grid');
$gridNode = $chart->appendChild($grid);
$x = $dom->createElement('x');
$xNode = $grid->appendChild($x);
$enabled = $dom->createElement('enabled', 'true');
$enabledNode = $x->appendChild($enabled);
$yLeft = $dom->createElement('y_left');
$yLeftNode = $grid->appendChild($yLeft);
$enabled = $dom->createElement('enabled', 'true');
$enabledNode = $yLeft->appendChild($enabled);
$yRight = $dom->createElement('y_right');
$yRightNode = $grid->appendChild($yRight);
$enabled = $dom->createElement('enabled', 'true');
$enabledNode = $yRight->appendChild($enabled);
$values = $dom->createElement('values');
$valuesNode = $chart->appendChild($values);
$x = $dom->createElement('x');
$xNode = $values->appendChild($x);
if ($chart_counter < $total_charts) {
$xEnabled = $dom->createElement('enabled', 'false');
} else {
$xEnabled = $dom->createElement('enabled', 'true');
}
$xEnabledNode = $x->appendChild($xEnabled);
$yLeft = $dom->createElement('y_left');
$yLeftNode = $values->appendChild($yLeft);
$yLeftEnabled = $dom->createElement('enabled', 'false');
$yLeftEnabledNode = $yLeft->appendChild($yLeftEnabled);
$yRight = $dom->createElement('y_right');
$yRightNode = $values->appendChild($yRight);
$yRightEnabled = $dom->createElement('enabled', 'true');
$yRightEnabledNode = $yRight->appendChild($yRightEnabled);
$unit = $dom->createElement('unit','');
$unitNode = $yRight->appendChild($unit);
$legend = $dom->createElement('legend');
$legendNode = $chart->appendChild($legend);
$hideDate = $dom->createElement('hide_date_on_period', 'true');
$hideDateNode = $legend->appendChild($hideDate);
$unitPosition = $dom->createElement('unit_position', 'right');
$unitPositionNode = $legend->appendChild($unitPosition);
$fade = $dom->createElement('fade_others_to', '100');
$fadeNode = $legend->appendChild($fade);
$textColor = $dom->createElement('text_color', '000000');
$textColorNode = $legend->appendChild($textColor);
$columnWidth = $dom->createElement('column_width', '100');
$columnWidthNode = $chart->appendChild($columnWidth);
$graphs = $dom->createElement('graphs');
$graphsNode = $chart->appendChild($graphs);
$graph_counter = 0;
$total_graphs = (count($needed_chart['columns'])-1);
foreach ($needed_chart['columns'] as $current_graph) {
$graph = $dom->createElement('graph');
$graphNode = $graphs->appendChild($graph);
$graphNode->setAttribute('gid', $graph_counter);
$axis = $dom->createElement('axis', 'right');
$axisNode = $graph->appendChild($axis);
$type = $dom->createElement('type', 'line');
$typeNode = $graph->appendChild($type);
$connect = $dom->createElement('connect', 'false');
$connectNode = $graph->appendChild($connect);
$color = $dom->createElement('color', $needed_chart['colors'][$graph_counter]);
$colorNode = $graph->appendChild($color);
$dataSources = $dom->createElement('data_sources');
$dataSourcesNode = $graph->appendChild($dataSources);
$close = $dom->createElement('close', $current_graph);
$closeNode = $dataSources->appendChild($close);
$title = $dom->createElement('title', $needed_chart['schools'][$graph_counter]);
$titleNode = $graph->appendChild($title);
$legend = $dom->createElement('legend');
$legendNode = $graph->appendChild($legend);
$date = $dom->createElement('date', '{close}');
$dateNode = $legend->appendChild($date);
$dateNode->setAttribute('key', 'true');
$dateNode->setAttribute('title', 'true');
$period = $dom->createElement('period', '{close}');
$periodNode = $legend->appendChild($period);
$periodNode->setAttribute('key', 'true');
$periodNode->setAttribute('title', 'true');
$hidden = $dom->createElement('hidden', 'false');
$hiddenNode = $graph->appendChild($hidden);
$graph_counter++;
}
$chart_counter++;
}
$dateFormats = $dom->createElement('date_formats');
$dateFormatsNode = $settings->appendChild($dateFormats);
$firstWeekDay = $dom->createElement('first_week_day', '0');
$firstWeekDayNode = $dateFormats->appendChild($firstWeekDay);
$hourFormat = $dom->createElement('hour_format', '24');
$hourFormatNode = $dateFormats->appendChild($hourFormat);
$xAxis = $dom->createElement('x_axis');
$xAxisNode = $dateFormats->appendChild($xAxis);
$seconds = $dom->createElement('seconds', 'hh:mm');
$secondsNode = $xAxis->appendChild($seconds);
$minutes = $dom->createElement('minutes', 'hh:mm');
$minutesNode = $xAxis->appendChild($minutes);
$hours = $dom->createElement('hours', 'hh:mm');
$hoursNode = $xAxis->appendChild($hours);
$dataSelector = $dom->createElement('data_set_selector');
$dataSelectorNode = $settings->appendChild($dataSelector);
$enabled = $dom->createElement('enabled', 'false');
$enabledNode = $dataSelector->appendChild($enabled);
$periodSelector = $dom->createElement('period_selector');
$periodSelectorNode = $settings->appendChild($periodSelector);
$customPeriodEnabled = $dom->createElement('custom_period_enabled', 'false');
$customPeriodEnabledNode = $periodSelector->appendChild($customPeriodEnabled);
//$periodsTitle = $dom->createElement('periods_title', 'Zoom:');
//$periodsTitleNode = $periodSelector->appendChild($periodsTitle);
//$periods = $dom->createElement('periods');
//$periodsNode = $periodSelector->appendChild($periods);
//$period = $dom->createElement('period', '1Hr');
//$periodNode = $periods->appendChild($period);
//$periodNode->setAttribute('pid', '0');
//$periodNode->setAttribute('type', 'mm');
//$periodNode->setAttribute('count', '60');
//$period = $dom->createElement('period', '6Hrs');
//$periodNode = $periods->appendChild($period);
//$periodNode->setAttribute('pid', '1');
//$periodNode->setAttribute('type', 'mm');
//$periodNode->setAttribute('count', '360');
//$period = $dom->createElement('period', '12Hrs');
//$periodNode = $periods->appendChild($period);
//$periodNode->setAttribute('pid', '2');
//$periodNode->setAttribute('type', 'hh');
//$periodNode->setAttribute('count', '12');
//$period = $dom->createElement('period', '1Day');
//$periodNode = $periods->appendChild($period);
//$periodNode->setAttribute('pid', '3');
//$periodNode->setAttribute('type', 'MAX');
$header = $dom->createElement('header');
$headerNode = $settings->appendChild($header);
$enabled = $dom->createElement('enabled', 'false');
$enabledNode = $header->appendChild($enabled);
$background = $dom->createElement('background');
$backgroundNode = $settings->appendChild($background);
$color = $dom->createElement('color', 'f0f0f0');
$colorNode = $background->appendChild($color);
$alpha = $dom->createElement('alpha', '100');
$alphaNode = $background->appendChild($alpha);
$plotArea = $dom->createElement('plot_area');
$plotAreaNode = $settings->appendChild($plotArea);
$margins = $dom->createElement('margins', '10');
$marginsNode = $plotArea->appendChild($margins);
$bgColor = $dom->createElement('bg_color', 'f0f0f0');
$bgColorNode = $plotArea->appendChild($bgColor);
$bgAlpha = $dom->createElement('bg_alpha', '100');
$bgAlphaNode = $plotArea->appendChild($bgAlpha);
$borderColor = $dom->createElement('border_color', 'cccccc');
$borderColorNode = $plotArea->appendChild($borderColor);
$borderAlpha = $dom->createElement('border_alpha', '0');
$borderAlphaNode = $plotArea->appendChild($borderAlpha);
$borderWidth = $dom->createElement('border_width', '0');
$borderWidthNode = $plotArea->appendChild($borderWidth);
$cornerRadius = $dom->createElement('corner_radius', '0');
$cornerRadiusNode = $plotArea->appendChild($cornerRadius);
$scroller = $dom->createElement('scroller');
$scrollerNode = $settings->appendChild($scroller);
$enabled = $dom->createElement('enabled', 'true');
$enabledNode = $scroller->appendChild($enabled);
$height = $dom->createElement('height', '25');
$heightNode = $scroller->appendChild($height);
$resizeButton = $dom->createElement('resize_button_style', 'dragger');
$resizeButtonNode = $scroller->appendChild($resizeButton);
$playback = $dom->createElement('playback');
$playbackNode = $scroller->appendChild($playback);
$enabled = $dom->createElement('enabled', 'true');
$enabledNode = $playback->appendChild($enabled);
$speed = $dom->createElement('speed', '10');
$speedNode = $playback->appendChild($speed);
$colorHover = $dom->createElement('color_hover', '00cc00');
$colorHoverNode = $playback->appendChild($colorHover);
$bgColor = $dom->createElement('bg_color', 'bbbbbb');
$bgColorNode = $scroller->appendChild($bgColor);
$contextMenu = $dom->createElement('context_menu');
$contextMenuNode = $settings->appendChild($contextMenu);
//Tell the browser the output is XML via the 'Content-Type' HTTP header
header('Content-Type: text/xml');
//Display DOM document
echo $dom->saveXML();
?>