mirror of
https://github.com/sbrl/Pepperminty-Wiki.git
synced 2024-11-25 17:23:00 +00:00
Begin work on grouping changes by page (#57).
Further work is needed, however.
This commit is contained in:
parent
0f288aa195
commit
1f1bffa780
3 changed files with 59 additions and 5 deletions
|
@ -1690,12 +1690,39 @@ function add_recent_change($rchange)
|
||||||
file_put_contents($paths->recentchanges, json_encode($recentchanges, JSON_PRETTY_PRINT));
|
file_put_contents($paths->recentchanges, json_encode($recentchanges, JSON_PRETTY_PRINT));
|
||||||
}
|
}
|
||||||
|
|
||||||
function render_recent_changes($recentchanges)
|
function render_recent_changes($recent_changes)
|
||||||
{
|
{
|
||||||
|
// Cache the number of recent changes we are dealing with
|
||||||
|
$rchange_count = count($recent_changes);
|
||||||
|
|
||||||
|
// Group changes made on the same page and the same day together
|
||||||
|
for($i = 0; $i < $rchange_count; $i++)
|
||||||
|
{
|
||||||
|
for($s = $i + 1; $s < $rchange_count; $s++)
|
||||||
|
{
|
||||||
|
// Break out if we have reached the end of the day we are scanning
|
||||||
|
if(date("dmY", $recent_changes[$i]->timestamp) !== date("dmY", $recent_changes[$s]->timestamp))
|
||||||
|
break;
|
||||||
|
|
||||||
|
// If we have found a change that has been made on the same page as
|
||||||
|
// the one that we are scanning for, move it up next to the change
|
||||||
|
// we are scanning for.
|
||||||
|
if($recent_changes[$i]->page == $recent_changes[$s]->page)
|
||||||
|
{
|
||||||
|
// FUTURE: We may need to remove and insert instead of swapping changes around if this causes some changes to appear out of order.
|
||||||
|
$temp = $recent_changes[$i + 1];
|
||||||
|
$recent_changes[$i + 1] = $recent_changes[$s];
|
||||||
|
$recent_changes[$s] = $temp;
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
$content = "<ul class='page-list'>\n";
|
$content = "<ul class='page-list'>\n";
|
||||||
$last_time = 0;
|
$last_time = 0;
|
||||||
foreach($recentchanges as $rchange)
|
for($i = 0; $i < $rchange_count; $i++)
|
||||||
{
|
{
|
||||||
|
$rchange = $recent_changes[$i];
|
||||||
if($last_time !== date("dmY", $rchange->timestamp))
|
if($last_time !== date("dmY", $rchange->timestamp))
|
||||||
$content .= "<li><h2>" . date("jS F", $rchange->timestamp) . "</h2></li>\n";
|
$content .= "<li><h2>" . date("jS F", $rchange->timestamp) . "</h2></li>\n";
|
||||||
|
|
||||||
|
|
|
@ -41,7 +41,7 @@
|
||||||
"author": "Starbeamrainbowlabs",
|
"author": "Starbeamrainbowlabs",
|
||||||
"description": "Adds recent changes. Access through the 'recent-changes' action.",
|
"description": "Adds recent changes. Access through the 'recent-changes' action.",
|
||||||
"id": "feature-recent-changes",
|
"id": "feature-recent-changes",
|
||||||
"lastupdate": 1459703430,
|
"lastupdate": 1459712086,
|
||||||
"optional": false
|
"optional": false
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
|
@ -94,12 +94,39 @@ function add_recent_change($rchange)
|
||||||
file_put_contents($paths->recentchanges, json_encode($recentchanges, JSON_PRETTY_PRINT));
|
file_put_contents($paths->recentchanges, json_encode($recentchanges, JSON_PRETTY_PRINT));
|
||||||
}
|
}
|
||||||
|
|
||||||
function render_recent_changes($recentchanges)
|
function render_recent_changes($recent_changes)
|
||||||
{
|
{
|
||||||
|
// Cache the number of recent changes we are dealing with
|
||||||
|
$rchange_count = count($recent_changes);
|
||||||
|
|
||||||
|
// Group changes made on the same page and the same day together
|
||||||
|
for($i = 0; $i < $rchange_count; $i++)
|
||||||
|
{
|
||||||
|
for($s = $i + 1; $s < $rchange_count; $s++)
|
||||||
|
{
|
||||||
|
// Break out if we have reached the end of the day we are scanning
|
||||||
|
if(date("dmY", $recent_changes[$i]->timestamp) !== date("dmY", $recent_changes[$s]->timestamp))
|
||||||
|
break;
|
||||||
|
|
||||||
|
// If we have found a change that has been made on the same page as
|
||||||
|
// the one that we are scanning for, move it up next to the change
|
||||||
|
// we are scanning for.
|
||||||
|
if($recent_changes[$i]->page == $recent_changes[$s]->page)
|
||||||
|
{
|
||||||
|
// FUTURE: We may need to remove and insert instead of swapping changes around if this causes some changes to appear out of order.
|
||||||
|
$temp = $recent_changes[$i + 1];
|
||||||
|
$recent_changes[$i + 1] = $recent_changes[$s];
|
||||||
|
$recent_changes[$s] = $temp;
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
$content = "<ul class='page-list'>\n";
|
$content = "<ul class='page-list'>\n";
|
||||||
$last_time = 0;
|
$last_time = 0;
|
||||||
foreach($recentchanges as $rchange)
|
for($i = 0; $i < $rchange_count; $i++)
|
||||||
{
|
{
|
||||||
|
$rchange = $recent_changes[$i];
|
||||||
if($last_time !== date("dmY", $rchange->timestamp))
|
if($last_time !== date("dmY", $rchange->timestamp))
|
||||||
$content .= "<li><h2>" . date("jS F", $rchange->timestamp) . "</h2></li>\n";
|
$content .= "<li><h2>" . date("jS F", $rchange->timestamp) . "</h2></li>\n";
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue