Browse Source

Update page/subpage views

Update the page and subpage views after reorder it
pull/674/head
danpros 1 year ago
parent
commit
45d7828983
1 changed files with 73 additions and 5 deletions
  1. +73
    -5
      system/admin/admin.php

+ 73
- 5
system/admin/admin.php View File

@ -687,8 +687,24 @@ function edit_page($title, $url, $content, $oldfile, $revertPage, $publishDraft,
if (file_exists($viewsFile)) { if (file_exists($viewsFile)) {
$views = json_decode(file_get_contents($viewsFile), true); $views = json_decode(file_get_contents($viewsFile), true);
$arr = replace_key($views, $oldfile, $newfile); $arr = replace_key($views, $oldfile, $newfile);
file_put_contents($viewsFile, json_encode($arr, JSON_UNESCAPED_UNICODE), LOCK_EX);
file_put_contents($viewsFile, json_encode($arr, JSON_UNESCAPED_UNICODE), LOCK_EX);
}
if (empty($static)) {
$sPage = find_subpage($pu);
$oldSub = 'content/static/' . pathinfo($oldfile, PATHINFO_FILENAME);
$newSub = 'content/static/' . pathinfo($newfile, PATHINFO_FILENAME);
if (!empty($sPage)) {
foreach ($sPage as $sp) {
if (file_exists($viewsFile)) {
$views = json_decode(file_get_contents($viewsFile), true);
$arr = replace_key($views, $oldSub . '/' . $sp->md, $newSub . '/' . $sp->md);
file_put_contents($viewsFile, json_encode($arr, JSON_UNESCAPED_UNICODE), LOCK_EX);
}
}
}
} }
} }
if ($destination == 'post') { if ($destination == 'post') {
@ -1496,22 +1512,63 @@ function reorder_pages($pages = null)
$i = 1; $i = 1;
$arr = array(); $arr = array();
$dir = 'content/static/'; $dir = 'content/static/';
$viewsFile = "content/data/views.json";
foreach ($pages as $p) { foreach ($pages as $p) {
$fn = pathinfo($p, PATHINFO_FILENAME); $fn = pathinfo($p, PATHINFO_FILENAME);
$num = str_pad($i, 2, 0, STR_PAD_LEFT); $num = str_pad($i, 2, 0, STR_PAD_LEFT);
$arr = explode('.' , $fn); $arr = explode('.' , $fn);
if (isset($arr[1])) { if (isset($arr[1])) {
$oldSub = find_subpage($arr[1]);
rename ($dir . $p, $dir . $num . '.' . $arr[1] . '.md'); rename ($dir . $p, $dir . $num . '.' . $arr[1] . '.md');
if (file_exists($viewsFile)) {
$views = json_decode(file_get_contents($viewsFile), true);
$mod = replace_key($views, $dir . $p, $dir . $num . '.' . $arr[1] . '.md');
file_put_contents($viewsFile, json_encode($mod, JSON_UNESCAPED_UNICODE), LOCK_EX);
}
if (is_dir($dir . $fn)) { if (is_dir($dir . $fn)) {
rename($dir . $fn, $dir . $num . '.' . $arr[1]); rename($dir . $fn, $dir . $num . '.' . $arr[1]);
if (!empty($oldSub)) {
foreach ($oldSub as $sp) {
if (file_exists($viewsFile)) {
$views = json_decode(file_get_contents($viewsFile), true);
$mod = replace_key($views, $sp->file, $dir . $num . '.' . $arr[1] . '/' . $sp->md);
file_put_contents($viewsFile, json_encode($mod, JSON_UNESCAPED_UNICODE), LOCK_EX);
}
}
}
} }
} else { } else {
$oldSub = find_subpage($fn);
rename($dir . $p, $dir . $num . '.' . $fn . '.md'); rename($dir . $p, $dir . $num . '.' . $fn . '.md');
if (file_exists($viewsFile)) {
$views = json_decode(file_get_contents($viewsFile), true);
$mod = replace_key($views, $dir . $p, $dir . $num . '.' . $fn . '.md');
file_put_contents($viewsFile, json_encode($mod, JSON_UNESCAPED_UNICODE), LOCK_EX);
}
if (is_dir($dir . $fn)) { if (is_dir($dir . $fn)) {
rename($dir . $fn, $dir . $num . '.' . $fn); rename($dir . $fn, $dir . $num . '.' . $fn);
if (!empty($oldSub)) {
foreach ($oldSub as $sp) {
if (file_exists($viewsFile)) {
$views = json_decode(file_get_contents($viewsFile), true);
$mod = replace_key($views, $sp->file, $dir . $num . '.' . $fn . '/' . $sp->md);
file_put_contents($viewsFile, json_encode($mod, JSON_UNESCAPED_UNICODE), LOCK_EX);
}
}
}
} }
} }
@ -1528,6 +1585,7 @@ function reorder_subpages($subpages = null)
$i = 1; $i = 1;
$arr = array(); $arr = array();
$dir = 'content/static/'; $dir = 'content/static/';
$viewsFile = "content/data/views.json";
foreach ($subpages as $sp) { foreach ($subpages as $sp) {
$dn = $dir . pathinfo($sp, PATHINFO_DIRNAME) . '/'; $dn = $dir . pathinfo($sp, PATHINFO_DIRNAME) . '/';
$fn = pathinfo($sp, PATHINFO_FILENAME); $fn = pathinfo($sp, PATHINFO_FILENAME);
@ -1535,13 +1593,23 @@ function reorder_subpages($subpages = null)
$arr = explode('.' , $fn); $arr = explode('.' , $fn);
if (isset($arr[1])) { if (isset($arr[1])) {
rename ($dir . $sp, $dn . $num . '.' . $arr[1] . '.md'); rename ($dir . $sp, $dn . $num . '.' . $arr[1] . '.md');
if (file_exists($viewsFile)) {
$views = json_decode(file_get_contents($viewsFile), true);
$mod = replace_key($views, $dir . $sp, $dn . $num . '.' . $arr[1] . '.md');
file_put_contents($viewsFile, json_encode($mod, JSON_UNESCAPED_UNICODE), LOCK_EX);
}
} else { } else {
rename($dir . $sp, $dn . $num . '.' . $fn . '.md'); rename($dir . $sp, $dn . $num . '.' . $fn . '.md');
if (file_exists($viewsFile)) {
$views = json_decode(file_get_contents($viewsFile), true);
$mod = replace_key($views, $dir . $sp, $dn . $num . '.' . $fn . '.md');
file_put_contents($viewsFile, json_encode($mod, JSON_UNESCAPED_UNICODE), LOCK_EX);
}
} }
$i++; $i++;
} }
rebuilt_cache(); rebuilt_cache();
} }

Loading…
Cancel
Save