-
Notifications
You must be signed in to change notification settings - Fork 517
/
Copy pathprocess_ui.php
170 lines (153 loc) · 10.9 KB
/
process_ui.php
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
<?php
defined('EMONCMS_EXEC') or die('Restricted access');
global $path, $settings;
load_language_files(dirname(__DIR__).'/locale', "process_messages");
// settings.ini parse_ini_file does not convert [0,6,8,10] into an array
// while settings.php engines_hidden will be an array
// we convert here the array form to a string which is then passed below
// to the process ui javascript side of things which coverts to a js array
$engine_hidden = $settings["feed"]['engines_hidden'];
if (is_array($engine_hidden)) $engine_hidden = json_encode($engine_hidden);
?>
<style>
.modal-processlist {
width: 94%; left: 3%; /* (100%-width)/2 */
margin-left:auto; margin-right:auto;
overflow-y: hidden;
}
.modal-processlist .modal-body {
max-height: none;
overflow-y: auto;
}
#process-table th:nth-of-type(6), td:nth-of-type(6) {
text-align: right;
}
#new-feed-tag_autocomplete-list{width: 120px}
</style>
<script type="text/javascript"><?php require "Modules/process/process_langjs.php"; ?></script>
<script type="text/javascript" src="<?php echo $path; ?>Modules/process/Views/process_ui.js?v=<?php echo $v; ?>"></script>
<script type="text/javascript" src="<?php echo $path; ?>Lib/misc/autocomplete.js?v=<?php echo $v; ?>"></script>
<link rel="stylesheet" href="<?php echo $path; ?>Lib/misc/autocomplete.css?v=<?php echo $v; ?>">
<script>
processlist_ui.engines_hidden = <?php echo $engine_hidden; ?>;
<?php if ($settings["redis"]["enabled"]) echo "processlist_ui.has_redis = 1;"; ?>
$(window).resize(function(){
processlist_ui.adjustmodal()
});
</script>
<div id="processlistModal" class="modal hide keyboard modal-processlist" tabindex="-1" role="dialog" aria-labelledby="processlistModalLabel" aria-hidden="true" data-backdrop="static">
<div class="modal-header">
<button type="button" class="close" id="close">×</button>
<h3><b><span id="contextname"></span></b> <?php echo dgettext('process_messages','process list setup'); ?></h3>
</div>
<div class="modal-body" id="processlist-ui">
<p><?php echo dgettext('process_messages','Processes are executed sequentially with the result value being passed down for further processing to the next processor on this processing list.'); ?></p>
<div id="noprocess" class="alert"><?php echo dgettext('process_messages','You have no processes defined'); ?></div>
<table id="process-table" class="table table-hover">
<tr>
<th style="width:5%;"></th>
<th style="width:5%;"><?php echo dgettext('process_messages','Order'); ?></th>
<th><?php echo dgettext('process_messages','Process'); ?></th>
<th style="width:5%; text-align:right;opacity:.8" title="Hover over the short names below to get the full description"><i class="icon icon-question-sign"></i></th>
<th><?php echo dgettext('process_messages','Arg'); ?></th>
<th><span class="hidden-md"><?php echo dgettext('process_messages','Latest'); ?></span></th>
<th colspan='2'><?php echo dgettext('process_messages','Actions'); ?></th>
</tr>
<tbody id="process-table-elements"></tbody>
</table>
<table class="table">
<tr><th>
<span id="process-header-add"><?php echo dgettext('process_messages','Add process'); ?>:
<a href="#" onclick="selectProcess(event)" class="label label-info" data-processid="process__log_to_feed">log</a>
<a href="#" onclick="selectProcess(event)" class="label label-info" data-processid="process__power_to_kwh">kwh</a>
<a href="#" onclick="selectProcess(event)" class="label label-warning" data-processid="process__add_input">+inp</a>
</span>
<span id="process-header-edit"><?php echo dgettext('process_messages','Edit process'); ?>:</span>
</th></tr>
<tr>
<td>
<select id="process-select" class="input-large"></select>
<span id="type-value" style="display:none">
<div class="input-prepend">
<span class="add-on value-select-label"><?php echo dgettext('process_messages','Value'); ?></span>
<input type="text" id="value-input" class="input-medium" placeholder="<?php echo dgettext('process_messages','Type value...'); ?>" />
</div>
</span>
<span id="type-text" style="display:none">
<div class="input-prepend">
<span class="add-on text-select-label"><?php echo dgettext('process_messages','Text'); ?></span>
<input type="text" id="text-input" class="input-large" placeholder="<?php echo dgettext('process_messages','Type text...'); ?>" />
</div>
</span>
<span id="type-input" style="display:none">
<div class="input-prepend">
<span class="add-on input-select-label"><?php echo dgettext('process_messages','Input'); ?></span>
<div class="btn-group">
<select id="input-select" class="input-medium"></select>
</div>
</div>
</span>
<span id="type-schedule" style="display:none">
<div class="input-prepend">
<span class="add-on schedule-select-label"><?php echo dgettext('process_messages','Schedule'); ?></span>
<div class="btn-group">
<select id="schedule-select" class="input-large"></select>
</div>
</div>
</span>
<span id="type-feed">
<div class="input-prepend">
<span class="add-on feed-select-label"><?php echo dgettext('process_messages','Feed'); ?></span>
<div class="btn-group">
<select id="feed-select" class="input-medium" style="border-bottom-right-radius: 0;border-top-right-radius: 0;"></select>
<div class="autocomplete">
<input id="new-feed-tag" type="text" pattern="[a-zA-Z0-9-_: ]+" required style="width:4em; border-right: none; border-bottom-right-radius: 0; border-top-right-radius: 0;" title="<?php echo dgettext('process_messages','Please enter a feed tag consisting of alphabetical letters, A-Z a-z 0-9 - _ : and spaces'); ?>" placeholder="<?php echo dgettext('process_messages','Tag'); ?>" />
</div>
<input id="new-feed-name" type="text" pattern="[a-zA-Z0-9-_: ]+" required style="width:6em" title="<?php echo dgettext('process_messages','Please enter a feed name consisting of alphabetical letters, A-Z a-z 0-9 - _ : and spaces'); ?>" placeholder="<?php echo dgettext('process_messages','Name'); ?>" />
</div>
</div>
<div class="input-prepend">
<span class="add-on feed-engine-label"><?php echo dgettext('process_messages','Engine'); ?></span>
<div class="btn-group">
<select id="feed-engine" class="input-medium">
<?php foreach (Engine::get_all_descriptive() as $engine) { ?>
<option value="<?php echo $engine["id"]; ?>"><?php echo $engine["description"]; ?></option>
<?php } ?>
</select>
<select id="feed-interval" class="input-mini">
<option value=""><?php echo dgettext('process_messages','Select interval'); ?></option>
<?php foreach (Engine::available_intervals() as $i) { ?>
<option value="<?php echo $i["interval"]; ?>"><?php echo dgettext('process_messages',$i["description"]); ?></option>
<?php } ?>
</select>
<?php if (isset($settings["feed"]["mysqltimeseries"]) && isset($settings["feed"]["mysqltimeseries"]["generic"]) && !$settings["feed"]["mysqltimeseries"]["generic"]) { ?>
<input id="feed-table" type="text" pattern="[a-zA-Z0-9_]+" style="width:6em" title="<?php echo dgettext('process_messages','Please enter a table name consisting of alphabetical letters, A-Z a-z 0-9 and _ characters'); ?>" placeholder="<?php echo dgettext('process_messages','Table'); ?>" />
<?php } ?>
</div>
</div>
</span>
<span id="type-btn-add">
<div class="input-prepend">
<button id="process-add" class="btn btn-info" style="border-radius: 4px;"><?php echo dgettext('process_messages','Add'); ?></button>
</div>
</span>
<span id="type-btn-edit" style="display:none">
<div class="input-prepend">
<button id="process-edit" class="btn btn-info" style="border-radius: 4px;"><?php echo dgettext('process_messages','Edit'); ?></button>
</div>
<div class="input-prepend">
<button id="process-cancel" class="btn" style="border-radius: 4px;"><?php echo dgettext('process_messages','Cancel'); ?></button>
</div>
</span>
</td>
</tr>
<tr>
<td><div id="description" class="alert alert-info"></div></td>
</tr>
</table>
</div>
<div class="modal-footer">
<button class="btn" id="close"><?php echo dgettext('process_messages','Close'); ?></button>
<button id="save-processlist" class="btn btn-success" style="float:right"><?php echo dgettext('process_messages','Not modified'); ?></button>
</div>
</div>