task API demo page, string stuff

This commit is contained in:
udo
2022-01-19 20:46:27 +00:00
parent cbf57a9a35
commit 08496afa11
15 changed files with 188 additions and 10 deletions
+9
View File
@@ -0,0 +1,9 @@
RENDER()
{
String task_name = first(context->get["task-name"], "example-task");
print("Task Name: ", task_name, "\n");
print("Task ID: ", task_pid(task_name), "\n");
print("Task Running: ", task_pid(task_name) == 0 ? "no" : "yes", "\n");
}
+57 -10
View File
@@ -1,12 +1,10 @@
RENDER()
{
DTree t;
String task_name = first(context->get["task-name"], "example-task");
<>
<link rel="stylesheet" href='style.css'></link>
<h1>
@@ -14,20 +12,69 @@ RENDER()
Tasks
</h1>
<pre style="white-space: pre-wrap"><?
<script>
print("Task ID: ", task("example-task", []() {
function load(target, url) {
var r = new XMLHttpRequest();
r.open("GET", url, true);
r.onreadystatechange = function () {
if (r.readyState != 4 || r.status != 200) return;
target.innerHTML = r.responseText;
};
r.send();
}
</script>
sleep(10);
<form action="?">
Task name
<input type="text" name="task-name" value="<?= task_name ?>"/>
<input type="submit" name="cmd" value="Get Info"/>
<input type="submit" name="cmd" value="Execute"/>
</form>
}), "\n");
<script>
setInterval(() => {
load(document.getElementById('task-status'), 'task-status.uce?task-name=<?= uri_encode(task_name) ?>');
}, 200);
</script>
Task Status
<pre id="task-status" style="white-space: pre-wrap"><?
print("Task Name: ", task_name, "\n");
print("Task ID: ", task_pid(task_name), "\n");
print("Task Running: ", task_pid(task_name) == 0 ? "no" : "yes", "\n");
print("FCGI SOCKET: ", context->resources.fcgi_socket);
?></pre>
<?
if(context->get["cmd"] == "Execute")
{
?>
Task Start
<pre style="white-space: pre-wrap"><?
print("New Task ID: ", task("example-task", []() {
sleep(10);
}), "\n");
print("Task run time: 10 seconds");
?></pre><?
}
?>
Params
<pre><?= var_dump(context->params) ?></pre>
<pre><?= var_dump(context->get) ?></pre>
</>
}