mirror of
https://github.com/sbrl/Pepperminty-Wiki.git
synced 2024-11-25 17:23:00 +00:00
Bugfix: Recent changes break when the number of changes reach $settings->max_recent_changes. Fixes #104.
This commit is contained in:
parent
2dd2c26cb5
commit
673fe033ee
5 changed files with 87 additions and 80 deletions
|
@ -46,6 +46,7 @@
|
|||
- Fixed pressing the edit button on pages that have a single quote in their name
|
||||
- Fixed a spelling mistake on the file preview page - I'm sure I fixed that before...!
|
||||
- Fixed an issue whereby the search index wouldn't update if your pages contained special characters
|
||||
- Fixed an issue with the recent changes list not updating when the number of recently changes reached setings.max_recent_changes (#104)
|
||||
|
||||
## v0.12
|
||||
|
||||
|
|
|
@ -1903,7 +1903,7 @@ register_module([
|
|||
$content .= "<p><em>None yet! Try making a few changes and then check back here.</em></p>\n";
|
||||
}
|
||||
|
||||
echo(page_renderer::render("Recent Changes - $settings->sitename", $content));
|
||||
exit(page_renderer::render("Recent Changes - $settings->sitename", $content));
|
||||
});
|
||||
|
||||
register_save_preprocessor(function(&$pageinfo, &$newsource, &$oldsource) {
|
||||
|
@ -1948,7 +1948,7 @@ function add_recent_change($rchange)
|
|||
// Limit the number of entries in the recent changes file if we've
|
||||
// been asked to.
|
||||
if(isset($settings->max_recent_changes))
|
||||
$recentchanges = array_slice($recentchanges, -$settings->max_recent_changes);
|
||||
$recentchanges = array_slice($recentchanges, 0, $settings->max_recent_changes);
|
||||
|
||||
// Save the recent changes file back to disk
|
||||
file_put_contents($paths->recentchanges, json_encode($recentchanges, JSON_PRETTY_PRINT));
|
||||
|
@ -3788,6 +3788,8 @@ register_module([
|
|||
}
|
||||
|
||||
// Check for edit conflicts
|
||||
if(!empty($pageindex->{$env->page}) && file_exists($env->storage_prefix . $pageindex->{$env->page}->filename))
|
||||
{
|
||||
$existing_content_hash = sha1_file($env->storage_prefix . $pageindex->{$env->page}->filename);
|
||||
if(isset($_POST["prev-content-hash"]) and
|
||||
$existing_content_hash != $_POST["prev-content-hash"])
|
||||
|
@ -3837,6 +3839,7 @@ DIFFSCRIPT;
|
|||
|
||||
exit(page_renderer::render_main("Edit Conflict - $env->page - $settings->sitename", $content));
|
||||
}
|
||||
}
|
||||
|
||||
// -----~~~==~~~-----
|
||||
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
"author": "Starbeamrainbowlabs",
|
||||
"description": "Adds a 'raw' action that shows you the raw source of a page.",
|
||||
"id": "action-raw",
|
||||
"lastupdate": 1476812825,
|
||||
"lastupdate": 1476813024,
|
||||
"optional": false
|
||||
},
|
||||
{
|
||||
|
@ -50,7 +50,7 @@
|
|||
"author": "Starbeamrainbowlabs",
|
||||
"description": "Adds recent changes. Access through the 'recent-changes' action.",
|
||||
"id": "feature-recent-changes",
|
||||
"lastupdate": 1476809773,
|
||||
"lastupdate": 1476813024,
|
||||
"optional": false
|
||||
},
|
||||
{
|
||||
|
@ -68,7 +68,7 @@
|
|||
"author": "Starbeamrainbowlabs",
|
||||
"description": "Adds proper search functionality to Pepperminty Wiki using an inverted index to provide a full text search engine. If pages don't show up, then you might have hit a stop word. If not, try requesting the `invindex-rebuild` action to rebuild the inverted index from scratch.",
|
||||
"id": "feature-search",
|
||||
"lastupdate": 1476809773,
|
||||
"lastupdate": 1476813024,
|
||||
"optional": false
|
||||
},
|
||||
{
|
||||
|
@ -77,7 +77,7 @@
|
|||
"author": "Starbeamrainbowlabs",
|
||||
"description": "Adds the ability to upload files to Pepperminty Wiki. Uploaded files act as pages and have the special 'File\/' prefix.",
|
||||
"id": "feature-upload",
|
||||
"lastupdate": 1476809773,
|
||||
"lastupdate": 1476813024,
|
||||
"optional": false
|
||||
},
|
||||
{
|
||||
|
@ -113,7 +113,7 @@
|
|||
"author": "Starbeamrainbowlabs",
|
||||
"description": "Allows you to edit pages by adding the edit and save actions. You should probably include this one.",
|
||||
"id": "page-edit",
|
||||
"lastupdate": 1476809773,
|
||||
"lastupdate": 1476813024,
|
||||
"optional": false
|
||||
},
|
||||
{
|
||||
|
@ -167,7 +167,7 @@
|
|||
"author": "Starbeamrainbowlabs",
|
||||
"description": "Adds an action to allow administrators to move pages.",
|
||||
"id": "page-move",
|
||||
"lastupdate": 1476809773,
|
||||
"lastupdate": 1476813024,
|
||||
"optional": false
|
||||
},
|
||||
{
|
||||
|
@ -185,7 +185,7 @@
|
|||
"author": "Starbeamrainbowlabs",
|
||||
"description": "Allows you to view pages. You really should include this one.",
|
||||
"id": "page-view",
|
||||
"lastupdate": 1476812765,
|
||||
"lastupdate": 1476813024,
|
||||
"optional": false
|
||||
},
|
||||
{
|
||||
|
@ -203,7 +203,7 @@
|
|||
"author": "Emanuil Rusev & Starbeamrainbowlabs",
|
||||
"description": "An upgraded (now default!) parser based on Emanuil Rusev's Parsedown Extra PHP library (https:\/\/github.com\/erusev\/parsedown-extra), which is licensed MIT. Please be careful, as this module adds some weight to your installation, and also *requires* write access to the disk on first load.",
|
||||
"id": "parser-parsedown",
|
||||
"lastupdate": 1476809773,
|
||||
"lastupdate": 1476813024,
|
||||
"optional": false
|
||||
}
|
||||
]
|
|
@ -50,7 +50,7 @@ register_module([
|
|||
$content .= "<p><em>None yet! Try making a few changes and then check back here.</em></p>\n";
|
||||
}
|
||||
|
||||
echo(page_renderer::render("Recent Changes - $settings->sitename", $content));
|
||||
exit(page_renderer::render("Recent Changes - $settings->sitename", $content));
|
||||
});
|
||||
|
||||
register_save_preprocessor(function(&$pageinfo, &$newsource, &$oldsource) {
|
||||
|
@ -95,7 +95,7 @@ function add_recent_change($rchange)
|
|||
// Limit the number of entries in the recent changes file if we've
|
||||
// been asked to.
|
||||
if(isset($settings->max_recent_changes))
|
||||
$recentchanges = array_slice($recentchanges, -$settings->max_recent_changes);
|
||||
$recentchanges = array_slice($recentchanges, 0, $settings->max_recent_changes);
|
||||
|
||||
// Save the recent changes file back to disk
|
||||
file_put_contents($paths->recentchanges, json_encode($recentchanges, JSON_PRETTY_PRINT));
|
||||
|
|
|
@ -183,6 +183,8 @@ register_module([
|
|||
}
|
||||
|
||||
// Check for edit conflicts
|
||||
if(!empty($pageindex->{$env->page}) && file_exists($env->storage_prefix . $pageindex->{$env->page}->filename))
|
||||
{
|
||||
$existing_content_hash = sha1_file($env->storage_prefix . $pageindex->{$env->page}->filename);
|
||||
if(isset($_POST["prev-content-hash"]) and
|
||||
$existing_content_hash != $_POST["prev-content-hash"])
|
||||
|
@ -232,6 +234,7 @@ DIFFSCRIPT;
|
|||
|
||||
exit(page_renderer::render_main("Edit Conflict - $env->page - $settings->sitename", $content));
|
||||
}
|
||||
}
|
||||
|
||||
// -----~~~==~~~-----
|
||||
|
||||
|
|
Loading…
Reference in a new issue