From 7031ebc907e02648a9d215c6a227f9305542795c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?N=C3=A9munaire?= Date: Sun, 18 Jan 2015 09:10:42 +0100 Subject: [PATCH] Use AJAX for generation status --- htdocs/index.php | 10 --- onyx/include/admin/generation.php | 17 +++-- onyx/include/admin/home.php | 6 -- onyx/tpl/bootstrap/admin/generation.tpl | 14 ++-- .../tpl/bootstrap/admin/generation_status.tpl | 6 ++ onyx/tpl/bootstrap/admin/home.tpl | 69 +++++++++++++++---- onyx/tpl/bootstrap/admin/layout.tpl | 1 + 7 files changed, 76 insertions(+), 47 deletions(-) create mode 100644 onyx/tpl/bootstrap/admin/generation_status.tpl diff --git a/htdocs/index.php b/htdocs/index.php index 03fdcaa1..aa0de1ea 100644 --- a/htdocs/index.php +++ b/htdocs/index.php @@ -83,25 +83,15 @@ if ($n && $p[0] == SALT_ADMIN) case "generation": case "generation/": case "generation/clear": - case "generation/clear/": case "generation/custom": - case "generation/custom/": case "generation/errors": - case "generation/errors/": case "generation/full": - case "generation/full/": case "generation/freeze": - case "generation/freeze/": case "generation/unfreeze": - case "generation/unfreeze/": case "generation/home": - case "generation/home/": case "generation/nginx": - case "generation/nginx/": case "generation/team": - case "generation/team/": case "generation/sync": - case "generation/sync/": $page = require("admin/generation.php"); break; diff --git a/onyx/include/admin/generation.php b/onyx/include/admin/generation.php index 2596c29e..85b4cc5b 100644 --- a/onyx/include/admin/generation.php +++ b/onyx/include/admin/generation.php @@ -48,12 +48,17 @@ if (count($p) > 2) break; } } +elseif (count($p) > 1) { + header("Content-type: application/xml"); -if (!empty($ret)) -{ - $template->assign("return", $ret); - return "admin/generation"; + $queue = explode("\n", pipe_backend_scheduler("show")); + unset($queue[0], $queue[1]); + $template->assign("queue", array_filter($queue, function($var){ return !empty($var); })); + + return "admin/generation_status"; } -header("Location: /".SALT_ADMIN."/"); -exit(); +header("Content-type: application/xml"); + +$template->assign("return", $ret); +return "admin/generation"; diff --git a/onyx/include/admin/home.php b/onyx/include/admin/home.php index b66fd634..2639659f 100644 --- a/onyx/include/admin/home.php +++ b/onyx/include/admin/home.php @@ -36,10 +36,4 @@ if (file_exists($srv_file)) openssl_x509_parse(file_get_contents($srv_file))); } -/* GENERATION */ - -$queue = explode("\n", pipe_backend_scheduler("show")); -unset($queue[0], $queue[1]); -$template->assign("queue", array_filter($queue, function($var){ return !empty($var); })); - return "admin/home"; diff --git a/onyx/tpl/bootstrap/admin/generation.tpl b/onyx/tpl/bootstrap/admin/generation.tpl index 7fbb787b..718bab1f 100644 --- a/onyx/tpl/bootstrap/admin/generation.tpl +++ b/onyx/tpl/bootstrap/admin/generation.tpl @@ -1,10 +1,4 @@ -{extends file="admin/layout.tpl"} -{block name=content} -

- Génération -

-{if isset($return)} -

Sortie

-
{$return|escape}
-{/if} -{/block} + + + {$return|escape} + diff --git a/onyx/tpl/bootstrap/admin/generation_status.tpl b/onyx/tpl/bootstrap/admin/generation_status.tpl new file mode 100644 index 00000000..6c32cbca --- /dev/null +++ b/onyx/tpl/bootstrap/admin/generation_status.tpl @@ -0,0 +1,6 @@ + + +{foreach from=$queue item=itm} + {$itm} +{/foreach} + diff --git a/onyx/tpl/bootstrap/admin/home.tpl b/onyx/tpl/bootstrap/admin/home.tpl index 94d3144d..4e9ebbcb 100644 --- a/onyx/tpl/bootstrap/admin/home.tpl +++ b/onyx/tpl/bootstrap/admin/home.tpl @@ -86,32 +86,29 @@ File d'attente - - {foreach from=$queue item=itm key=k} + - - {$itm} - + Pending... - {/foreach} +

     
 {/block}
+{block name=end2}
+
+{/block}
diff --git a/onyx/tpl/bootstrap/admin/layout.tpl b/onyx/tpl/bootstrap/admin/layout.tpl
index d56229cd..ca09d3f0 100644
--- a/onyx/tpl/bootstrap/admin/layout.tpl
+++ b/onyx/tpl/bootstrap/admin/layout.tpl
@@ -16,6 +16,7 @@
   {/if}
     update_end();
   
+  {block name=end2}{/block}
 {/block}
 
 {block name=body}