";
- echo "
";
- echo tab_title($title,$page['root'],_var($page,'Tag',false));
- echo "
";
- }
- $tab++;
- }
- if (isset($page['Type']) && $page['Type']=='menu') {
- $pgs = find_pages($page['name']);
- foreach ($pgs as $pg) {
- @eval("\$title=\"".htmlspecialchars($pg['Title'])."\";");
- $icon = _var($pg,'Icon',"
");
- if (substr($icon,-4)=='.png') {
- $root = $pg['root'];
- if (file_exists("$docroot/$root/images/$icon")) {
- $icon = "
";
- } elseif (file_exists("$docroot/$root/$icon")) {
- $icon = "
";
+ $close = false;
+ if (isset($page['Title'])) {
+ eval("\$title=\"".htmlspecialchars($page['Title'])."\";");
+ if ($tabbed) {
+ echo "
";
+ echo tab_title($title, $page['root'], _var($page, 'Tag', false));
+ echo " ";
+ $close = true;
} else {
- $icon = "
";
+ if ($tab == 1) {
+ echo "
";
+ }
+ echo "
";
+ echo tab_title($title, $page['root'], _var($page, 'Tag', false));
+ echo "
";
}
- } elseif (substr($icon,0,5)=='icon-') {
- $icon = "
";
- } elseif ($icon[0]!='<') {
- if (substr($icon,0,3)!='fa-') $icon = "fa-$icon";
- $icon = "
";
- }
- echo "
";
+ $tab++;
+ }
+ if (isset($page['Type']) && $page['Type'] == 'menu') {
+ $pgs = find_pages($page['name']);
+ foreach ($pgs as $pg) {
+ @eval("\$title=\"".htmlspecialchars($pg['Title'])."\";");
+ $icon = _var($pg, 'Icon', "
");
+ if (substr($icon, -4) == '.png') {
+ $root = $pg['root'];
+ if (file_exists("$docroot/$root/images/$icon")) {
+ $icon = "
";
+ } elseif (file_exists("$docroot/$root/$icon")) {
+ $icon = "
";
+ } else {
+ $icon = "
";
+ }
+ } elseif (substr($icon, 0, 5) == 'icon-') {
+ $icon = "
";
+ } elseif ($icon[0] != '<') {
+ if (substr($icon, 0, 3) != 'fa-') {
+ $icon = "fa-$icon";
+ }
+ $icon = "
";
+ }
+ echo "
";
+ }
+ }
+ // create list of nchan scripts to be started
+ if (isset($page['Nchan'])) {
+ nchan_merge($page['root'], $page['Nchan']);
+ }
+ annotate($page['file']);
+ // include page specific stylesheets (if existing)
+ $css = "/{$page['root']}/sheets/{$page['name']}";
+ $css_stock = "$css.css";
+ $css_theme = "$css-$theme.css";
+ if (is_file($docroot.$css_stock)) {
+ echo '
',"\n";
+ }
+ if (is_file($docroot.$css_theme)) {
+ echo '
',"\n";
+ }
+ // create page content
+ empty($page['Markdown']) || $page['Markdown'] == 'true' ? eval('?>'.Markdown(parse_text($page['text']))) : eval('?>'.parse_text($page['text']));
+ if ($close) {
+ echo "
";
}
- }
- // create list of nchan scripts to be started
- if (isset($page['Nchan'])) nchan_merge($page['root'], $page['Nchan']);
- annotate($page['file']);
- // include page specific stylesheets (if existing)
- $css = "/{$page['root']}/sheets/{$page['name']}";
- $css_stock = "$css.css";
- $css_theme = "$css-$theme.css";
- if (is_file($docroot.$css_stock)) echo '
',"\n";
- if (is_file($docroot.$css_theme)) echo '
',"\n";
- // create page content
- empty($page['Markdown']) || $page['Markdown']=='true' ? eval('?>'.Markdown(parse_text($page['text']))) : eval('?>'.parse_text($page['text']));
- if ($close) echo "
";
}
if (count($pages)) {
- $running = file_exists($nchan_pid) ? file($nchan_pid,FILE_IGNORE_NEW_LINES|FILE_SKIP_EMPTY_LINES) : [];
- $start = array_diff($nchan, $running); // returns any new scripts to be started
- $stop = array_diff($running, $nchan); // returns any old scripts to be stopped
- $running = array_merge($start, $running); // update list of current running nchan scripts
- // start nchan scripts which are new
- foreach ($start as $row) {
- $script = explode(':',$row)[0];
- exec("$docroot/$script &>/dev/null &");
- }
- // stop nchan scripts with the :stop option
- foreach ($stop as $row) {
- [$script,$opt] = my_explode(':',$row);
- if ($opt == 'stop') {
- exec("pkill -f $docroot/$script &>/dev/null &");
- array_splice($running,array_search($row,$running),1);
+ $running = file_exists($nchan_pid) ? file($nchan_pid, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES) : [];
+ $start = array_diff($nchan, $running); // returns any new scripts to be started
+ $stop = array_diff($running, $nchan); // returns any old scripts to be stopped
+ $running = array_merge($start, $running); // update list of current running nchan scripts
+ // start nchan scripts which are new
+ foreach ($start as $row) {
+ $script = explode(':', $row)[0];
+ exec("$docroot/$script &>/dev/null &");
+ }
+ // stop nchan scripts with the :stop option
+ foreach ($stop as $row) {
+ [$script,$opt] = my_explode(':', $row);
+ if ($opt == 'stop') {
+ exec("pkill -f $docroot/$script &>/dev/null &");
+ array_splice($running, array_search($row, $running), 1);
+ }
+ }
+ if (count($running)) {
+ file_put_contents($nchan_pid, implode("\n", $running)."\n");
+ } else {
+ @unlink($nchan_pid);
}
- }
- if (count($running)) file_put_contents($nchan_pid,implode("\n",$running)."\n"); else @unlink($nchan_pid);
}
unset($pages,$page,$pgs,$pg,$icon,$nchan,$running,$start,$stop,$row,$script,$opt,$nchan_run);
?>
@@ -274,7 +340,7 @@ unset($pages,$page,$pgs,$pg,$icon,$nchan,$running,$start,$stop,$row,$script,$opt
- require_once "$docroot/webGui/include/DefaultPageLayout/Footer.php"; ?>
- require_once "$docroot/plugins/dynamix/include/DefaultPageLayout/BodyInlineJS.php"; ?>
+
+
diff --git a/emhttp/plugins/dynamix/include/DefaultPageLayout/BodyInlineJS.php b/emhttp/plugins/dynamix/include/DefaultPageLayout/BodyInlineJS.php
index 1412956a3..4ec20cfc3 100644
--- a/emhttp/plugins/dynamix/include/DefaultPageLayout/BodyInlineJS.php
+++ b/emhttp/plugins/dynamix/include/DefaultPageLayout/BodyInlineJS.php
@@ -434,7 +434,13 @@ document.addEventListener("visibilitychange", (event) => {
nchanFocusStop();
} else {
if (isset($myPage['Load']) && $myPage['Load'] > 0):?>
- window.location.reload();
+ if ( dialogOpen() ) {
+ clearInterval(timers.reload);
+ setTimerReload();
+ nchanFocusStart();
+ } else {
+ window.location.reload();
+ }
nchanFocusStart();