summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlisps <stummp@loewen.de>2013-11-22 09:13:53 +0100
committerlisps <stummp@loewen.de>2013-11-22 09:13:53 +0100
commitac6dc646a5823005fd7f9747f2c333bd6379baee (patch)
tree9750dc37067ea677d6b2b5555eb1c56c707383ea
parent4bde2196a1e3572cead3f4d4e4b6a5a752bd62b3 (diff)
parent332817fccb0577125da59b71f437e72ae823a7c8 (diff)
downloadrpg-ac6dc646a5823005fd7f9747f2c333bd6379baee.tar.gz
rpg-ac6dc646a5823005fd7f9747f2c333bd6379baee.tar.bz2
Merge remote-tracking branch 'remotes/splitbrain/diff_navigation' into revisions
-rw-r--r--_test/tests/inc/changelog_getrelativerevision.test.php243
-rw-r--r--_test/tests/inc/changelog_getrevisioninfo.test.php48
-rw-r--r--_test/tests/inc/changelog_getrevisions.test.php116
-rw-r--r--feed.php5
-rw-r--r--inc/RemoteAPICore.php4
-rw-r--r--inc/changelog.php127
-rw-r--r--inc/common.php4
-rw-r--r--inc/html.php55
-rw-r--r--inc/media.php8
-rw-r--r--inc/subscription.php6
-rw-r--r--lib/plugins/revert/admin.php2
11 files changed, 376 insertions, 242 deletions
diff --git a/_test/tests/inc/changelog_getrelativerevision.test.php b/_test/tests/inc/changelog_getrelativerevision.test.php
index 7cd081eab..c636b3c04 100644
--- a/_test/tests/inc/changelog_getrelativerevision.test.php
+++ b/_test/tests/inc/changelog_getrelativerevision.test.php
@@ -28,13 +28,13 @@ class changelog_getrelativerevision_test extends DokuWikiTest {
* no nonexist.changes meta file available
*/
function test_changemetadatanotexists() {
- $rev = 1362525899;
- $dir = 1;
- $id = 'nonexist';
+ $rev = 1362525899;
+ $dir = 1;
+ $id = 'nonexist';
$revsexpected = false;
- $pagelog = new PageRevisionLog($id, $chunk_size = 8192);
- $revs = $pagelog->getRelativeRevision($rev, $dir, $media = false);
+ $pagelog = new PageChangeLog($id, $chunk_size = 8192);
+ $revs = $pagelog->getRelativeRevision($rev, $dir);
$this->assertEquals($revsexpected, $revs);
}
@@ -42,12 +42,12 @@ class changelog_getrelativerevision_test extends DokuWikiTest {
* no nonexist.changes meta file available
*/
function test_nodirection() {
- $rev = 1362525899;
- $dir = 0;
+ $rev = 1362525899;
+ $dir = 0;
$revsexpected = false;
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $revs = $pagelog->getRelativeRevision($rev, $dir, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revs = $pagelog->getRelativeRevision($rev, $dir);
$this->assertEquals($revsexpected, $revs);
}
@@ -56,36 +56,72 @@ class changelog_getrelativerevision_test extends DokuWikiTest {
*
*/
function test_startatexactcurrentrev() {
- $rev = 1374261194;
- $dir = 1;
- $revsexpected = false;
+ $rev = 1385051947;
+ $dir = 1;
+ $revsexpectedpos = false;
+ $revsexpectedneg = 1374261194;
-// global $INFO;
-// $INFO = pageinfo();
-// var_dump($INFO);
-// var_dump($INFO['meta']);
-// var_dump($INFO['meta']['last_change']);
-// var_dump($INFO['meta']['last_change']['date']);
+ //set a known timestamp
+ touch(wikiFN($this->pageid), $rev);
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $revs = $pagelog->getRelativeRevision($rev, $dir, $media = false);
- $this->assertEquals($revsexpected, $revs);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revs = $pagelog->getRelativeRevision($rev, $dir);
+ $this->assertEquals($revsexpectedpos, $revs);
+
+ $revs = $pagelog->getRelativeRevision($rev, -$dir);
+ $this->assertEquals($revsexpectedneg, $revs);
+ }
+
+ /**
+ * start at exact last revision of mailinglist page
+ *
+ */
+ function test_startatexactlastrev() {
+ $rev = 1360110636;
+ $dir = 1;
+ $revsexpectedpos = 1361901536;
+ $revsexpectedneg = false;
+
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revs = $pagelog->getRelativeRevision($rev, $dir);
+ $this->assertEquals($revsexpectedpos, $revs);
+
+ $revs = $pagelog->getRelativeRevision($rev, -$dir);
+ $this->assertEquals($revsexpectedneg, $revs);
+ }
+
+ /**
+ * start at exact one before last revision of mailinglist page
+ *
+ */
+ function test_requestlastrevisions() {
+ $rev = 1361901536;
+ $dir = -1;
+ $revsexpectedlast = 1360110636;
+ $revsexpectedbeforelast = false;
+
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revs = $pagelog->getRelativeRevision($rev, $dir);
+ $this->assertEquals($revsexpectedlast, $revs);
+
+ $revs = $pagelog->getRelativeRevision($rev, 2 * $dir);
+ $this->assertEquals($revsexpectedbeforelast, $revs);
}
/**
* request existing rev
*/
function test_requestrev() {
- $rev = 1362525359;
- $dir = 1;
- $revexpected = 1362525899;
+ $rev = 1362525359;
+ $dir = 1;
+ $revexpected = 1362525899;
$infoexpected = parseChangelogLine($this->logline);
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $revfound = $pagelog->getRelativeRevision($rev, $dir, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revfound = $pagelog->getRelativeRevision($rev, $dir);
$this->assertEquals($revexpected, $revfound);
//checked info returned from cache
- $info = $pagelog->getRevisionInfo($revfound, $media = false);
+ $info = $pagelog->getRevisionInfo($revfound);
$this->assertEquals($infoexpected, $info);
}
@@ -93,12 +129,12 @@ class changelog_getrelativerevision_test extends DokuWikiTest {
* request existing rev with chucked reading
*/
function test_requestnextrev_chuncked() {
- $rev = 1362525899;
- $dir = 1;
+ $rev = 1362525899;
+ $dir = 1;
$revexpected = 1362525926;
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 512);
- $revfound = $pagelog->getRelativeRevision($rev, $dir, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 512);
+ $revfound = $pagelog->getRelativeRevision($rev, $dir);
$this->assertEquals($revexpected, $revfound);
}
@@ -106,12 +142,12 @@ class changelog_getrelativerevision_test extends DokuWikiTest {
* request existing rev
*/
function test_requestnextfifthrev() {
- $rev = 1362525899;
- $dir = 5;
- $revexpected = 1362526767;
+ $rev = 1362525899;
+ $dir = 5;
+ $revexpected = 1362526767;
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $revfound = $pagelog->getRelativeRevision($rev, $dir, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revfound = $pagelog->getRelativeRevision($rev, $dir);
$this->assertEquals($revexpected, $revfound);
}
@@ -119,12 +155,12 @@ class changelog_getrelativerevision_test extends DokuWikiTest {
* request existing rev with chucked reading
*/
function test_requestnextfifthrev_chuncked() {
- $rev = 1362525899;
- $dir = 5;
+ $rev = 1362525899;
+ $dir = 5;
$revexpected = 1362526767;
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 512);
- $revfound = $pagelog->getRelativeRevision($rev, $dir, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 512);
+ $revfound = $pagelog->getRelativeRevision($rev, $dir);
$this->assertEquals($revexpected, $revfound);
}
@@ -132,17 +168,17 @@ class changelog_getrelativerevision_test extends DokuWikiTest {
* request existing rev
*/
function test_requestprevrev() {
- $rev = 1362525899;
- $dir1 = -1;
- $dir5 = -5;
- $revexpected1 = 1362525359;
- $revexpected5 = 1360110636;
-
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $revfound1 = $pagelog->getRelativeRevision($rev, $dir1, $media = false);
+ $rev = 1362525899;
+ $dir1 = -1;
+ $dir5 = -5;
+ $revexpected1 = 1362525359;
+ $revexpected5 = 1360110636;
+
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revfound1 = $pagelog->getRelativeRevision($rev, $dir1);
$this->assertEquals($revexpected1, $revfound1);
- $revfound5 = $pagelog->getRelativeRevision($rev, $dir5, $media = false);
+ $revfound5 = $pagelog->getRelativeRevision($rev, $dir5);
$this->assertEquals($revexpected5, $revfound5);
}
@@ -150,17 +186,17 @@ class changelog_getrelativerevision_test extends DokuWikiTest {
* request existing rev with chucked reading
*/
function test_requestprevrev_chuncked() {
- $rev = 1362525899;
- $dir1 = -1;
- $dir5 = -5;
- $revexpected1 = 1362525359;
- $revexpected5 = 1360110636;
-
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 512);
- $revfound1 = $pagelog->getRelativeRevision($rev, $dir1, $media = false);
+ $rev = 1362525899;
+ $dir1 = -1;
+ $dir5 = -5;
+ $revexpected1 = 1362525359;
+ $revexpected5 = 1360110636;
+
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 512);
+ $revfound1 = $pagelog->getRelativeRevision($rev, $dir1);
$this->assertEquals($revexpected1, $revfound1);
- $revfound5 = $pagelog->getRelativeRevision($rev, $dir5, $media = false);
+ $revfound5 = $pagelog->getRelativeRevision($rev, $dir5);
$this->assertEquals($revexpected5, $revfound5);
}
@@ -168,12 +204,12 @@ class changelog_getrelativerevision_test extends DokuWikiTest {
* request after recentest version in changelog
*/
function test_requestrecentestlogline_next() {
- $rev = 1374261194;
- $dir = 1;
- $revexpected = false;
+ $rev = 1374261194;
+ $dir = 1;
+ $revexpected = false;
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $revfound = $pagelog->getRelativeRevision($rev, $dir, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revfound = $pagelog->getRelativeRevision($rev, $dir);
$this->assertEquals($revexpected, $revfound);
}
@@ -181,26 +217,25 @@ class changelog_getrelativerevision_test extends DokuWikiTest {
* request after recentest version in changelog, with chuncked reading
*/
function test_requestrecentestlogline_next_chuncked() {
- $rev = 1374261194;
- $dir = 1;
- $revexpected = false;
+ $rev = 1374261194;
+ $dir = 1;
+ $revexpected = false;
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 512);
- $revfound = $pagelog->getRelativeRevision($rev, $dir, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 512);
+ $revfound = $pagelog->getRelativeRevision($rev, $dir);
$this->assertEquals($revexpected, $revfound);
}
-
/**
* request before current version
*/
function test_requestrecentestlogline_prev() {
- $rev = 1374261194;
- $dir = -1;
- $revexpected = 1371579614;
+ $rev = 1374261194;
+ $dir = -1;
+ $revexpected = 1371579614;
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $revfound = $pagelog->getRelativeRevision($rev, $dir, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revfound = $pagelog->getRelativeRevision($rev, $dir);
$this->assertEquals($revexpected, $revfound);
}
@@ -208,12 +243,12 @@ class changelog_getrelativerevision_test extends DokuWikiTest {
* request before current version, with chuncked reading
*/
function test_requestrecentestlogline_prev_chuncked() {
- $rev = 1374261194;
- $dir = -1;
- $revexpected = 1371579614;
+ $rev = 1374261194;
+ $dir = -1;
+ $revexpected = 1371579614;
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 512);
- $revfound = $pagelog->getRelativeRevision($rev, $dir, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 512);
+ $revfound = $pagelog->getRelativeRevision($rev, $dir);
$this->assertEquals($revexpected, $revfound);
}
@@ -226,8 +261,8 @@ class changelog_getrelativerevision_test extends DokuWikiTest {
$dir = 1;
$revexpected = 1360110636;
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $revfound = $pagelog->getRelativeRevision($rev, $dir, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revfound = $pagelog->getRelativeRevision($rev, $dir);
$this->assertEquals($revexpected, $revfound);
}
@@ -240,8 +275,8 @@ class changelog_getrelativerevision_test extends DokuWikiTest {
$dir = -1;
$revexpected = false;
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $revfound = $pagelog->getRelativeRevision($rev, $dir, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revfound = $pagelog->getRelativeRevision($rev, $dir);
$this->assertEquals($revexpected, $revfound);
}
@@ -253,8 +288,8 @@ class changelog_getrelativerevision_test extends DokuWikiTest {
$dir = 1;
$revexpected = 1362525899;
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $revfound = $pagelog->getRelativeRevision($rev, $dir, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revfound = $pagelog->getRelativeRevision($rev, $dir);
$this->assertEquals($revexpected, $revfound);
}
@@ -266,8 +301,42 @@ class changelog_getrelativerevision_test extends DokuWikiTest {
$dir = -1;
$revexpected = 1362525359;
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $revfound = $pagelog->getRelativeRevision($rev, $dir, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revfound = $pagelog->getRelativeRevision($rev, $dir);
$this->assertEquals($revexpected, $revfound);
}
+
+ function test_iscurrentpagerevision() {
+ $rev = 1385051947;
+ $currentexpected = true;
+
+ //set a known timestamp
+ touch(wikiFN($this->pageid), $rev);
+
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $current = $pagelog->isCurrentRevision($rev);
+ $this->assertEquals($currentexpected, $current);
+ }
+
+ function test_isnotcurrentpagerevision() {
+ $rev = 1385051947;
+ $not_current_rev = $rev - 1;
+ $currentexpected = false;
+
+ //set a known timestamp
+ touch(wikiFN($this->pageid), $rev);
+
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $current = $pagelog->isCurrentRevision($not_current_rev);
+ $this->assertEquals($currentexpected, $current);
+ }
+
+ function test_notexistingcurrentpage() {
+ $rev = 1385051947;
+ $currentexpected = false;
+
+ $pagelog = new PageChangeLog('nonexistingpage', $chunk_size = 8192);
+ $current = $pagelog->isCurrentRevision($rev);
+ $this->assertEquals($currentexpected, $current);
+ }
} \ No newline at end of file
diff --git a/_test/tests/inc/changelog_getrevisioninfo.test.php b/_test/tests/inc/changelog_getrevisioninfo.test.php
index a2f0d808f..07e229824 100644
--- a/_test/tests/inc/changelog_getrevisioninfo.test.php
+++ b/_test/tests/inc/changelog_getrevisioninfo.test.php
@@ -29,12 +29,12 @@ class changelog_getrevisionsinfo_test extends DokuWikiTest {
* no nonexist.changes meta file available
*/
function test_changemetadatanotexists() {
- $rev = 1362525899;
- $id = 'nonexist';
+ $rev = 1362525899;
+ $id = 'nonexist';
$revsexpected = false;
- $pagelog = new PageRevisionLog($id, $chunk_size = 8192);
- $revs = $pagelog->getRevisionInfo($rev, $media = false);
+ $pagelog = new PageChangeLog($id, $chunk_size = 8192);
+ $revs = $pagelog->getRevisionInfo($rev);
$this->assertEquals($revsexpected, $revs);
}
@@ -42,14 +42,14 @@ class changelog_getrevisionsinfo_test extends DokuWikiTest {
* request existing rev
*/
function test_requestrev() {
- $rev = 1362525899;
+ $rev = 1362525899;
$infoexpected = parseChangelogLine($this->logline);
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $info = $pagelog->getRevisionInfo($rev, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $info = $pagelog->getRevisionInfo($rev);
$this->assertEquals($infoexpected, $info);
//returns cached value
- $info = $pagelog->getRevisionInfo($rev, $media = false);
+ $info = $pagelog->getRevisionInfo($rev);
$this->assertEquals($infoexpected, $info);
}
@@ -57,11 +57,11 @@ class changelog_getrevisionsinfo_test extends DokuWikiTest {
* request existing rev with chucked reading
*/
function test_requestrev_chuncked() {
- $rev = 1362525899;
+ $rev = 1362525899;
$infoexpected = parseChangelogLine($this->logline);
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 512);
- $info = $pagelog->getRevisionInfo($rev, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 512);
+ $info = $pagelog->getRevisionInfo($rev);
$this->assertEquals($infoexpected, $info);
}
@@ -69,14 +69,14 @@ class changelog_getrevisionsinfo_test extends DokuWikiTest {
* request current version
*/
function test_requestrecentestlogline() {
- $rev = 1374261194;
+ $rev = 1374261194;
$infoexpected = parseChangelogLine($this->firstlogline);
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $info = $pagelog->getRevisionInfo($rev, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $info = $pagelog->getRevisionInfo($rev);
$this->assertEquals($infoexpected, $info);
//returns cached value
- $info = $pagelog->getRevisionInfo($rev, $media = false);
+ $info = $pagelog->getRevisionInfo($rev);
$this->assertEquals($infoexpected, $info);
}
@@ -84,11 +84,11 @@ class changelog_getrevisionsinfo_test extends DokuWikiTest {
* request current version, with chuncked reading
*/
function test_requestrecentestlogline_chuncked() {
- $rev = 1374261194;
+ $rev = 1374261194;
$infoexpected = parseChangelogLine($this->firstlogline);
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 512);
- $info = $pagelog->getRevisionInfo($rev, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 512);
+ $info = $pagelog->getRevisionInfo($rev);
$this->assertEquals($infoexpected, $info);
}
@@ -98,8 +98,8 @@ class changelog_getrevisionsinfo_test extends DokuWikiTest {
function test_negativerev() {
$rev = -10;
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $info = $pagelog->getRevisionInfo($rev, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $info = $pagelog->getRevisionInfo($rev);
$this->assertEquals(false, $info);
}
@@ -109,8 +109,8 @@ class changelog_getrevisionsinfo_test extends DokuWikiTest {
function test_notexistingrev() {
$rev = 1362525890;
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $info = $pagelog->getRevisionInfo($rev, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $info = $pagelog->getRevisionInfo($rev);
$this->assertEquals(false, $info);
}
@@ -118,10 +118,10 @@ class changelog_getrevisionsinfo_test extends DokuWikiTest {
* sometimes chuncksize is set to true
*/
function test_chuncksizetrue() {
- $rev = 1362525899;
+ $rev = 1362525899;
$infoexpected = parseChangelogLine($this->logline);
- $pagelog = new PageRevisionLog($this->pageid, true);
+ $pagelog = new PageChangeLog($this->pageid, true);
$info = $pagelog->getRevisionInfo($rev);
$this->assertEquals($infoexpected, $info);
}
diff --git a/_test/tests/inc/changelog_getrevisions.test.php b/_test/tests/inc/changelog_getrevisions.test.php
index e2b9d115e..69315638f 100644
--- a/_test/tests/inc/changelog_getrevisions.test.php
+++ b/_test/tests/inc/changelog_getrevisions.test.php
@@ -45,11 +45,11 @@ class changelog_getrevisions_test extends DokuWikiTest {
*/
function test_changemetadatanotexists() {
$first = 0;
- $num = 1;
- $id = 'nonexist';
+ $num = 1;
+ $id = 'nonexist';
- $pagelog = new PageRevisionLog($id, $chunk_size = 8192);
- $revs = $pagelog->getRevisions($first, $num, $media = false);
+ $pagelog = new PageChangeLog($id, $chunk_size = 8192);
+ $revs = $pagelog->getRevisions($first, $num);
$revsexpected = array();
$this->assertEquals($revsexpected, $revs);
}
@@ -59,16 +59,16 @@ class changelog_getrevisions_test extends DokuWikiTest {
* (so skips first line which belongs to the current existing page)
*/
function test_requestlastrev() {
- $first = 0;
- $num = 1;
+ $first = 0;
+ $num = 1;
$revsexpected = array($this->revsexpected[1]);
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $revs = $pagelog->getRevisions($first, $num, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revs = $pagelog->getRevisions($first, $num);
$this->assertEquals($revsexpected, $revs);
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 512);
- $revs = $pagelog->getRevisions($first, $num, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 512);
+ $revs = $pagelog->getRevisions($first, $num);
$this->assertEquals($revsexpected, $revs);
}
@@ -77,16 +77,16 @@ class changelog_getrevisions_test extends DokuWikiTest {
* (so skips first line which belongs to the current existing page)
*/
function test_requestonebutlastrev() {
- $first = 1;
- $num = 1;
+ $first = 1;
+ $num = 1;
$revsexpected = array($this->revsexpected[2]);
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $revs = $pagelog->getRevisions($first, $num, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revs = $pagelog->getRevisions($first, $num);
$this->assertEquals($revsexpected, $revs);
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 512);
- $revs = $pagelog->getRevisions($first, $num, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 512);
+ $revs = $pagelog->getRevisions($first, $num);
$this->assertEquals($revsexpected, $revs);
}
@@ -95,16 +95,16 @@ class changelog_getrevisions_test extends DokuWikiTest {
* (so skips first line of current existing page)
*/
function test_requestrevswithoffset() {
- $first = 10;
- $num = 5;
+ $first = 10;
+ $num = 5;
$revsexpected = array_slice($this->revsexpected, $first + 1, $num);
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $revs = $pagelog->getRevisions($first, $num, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revs = $pagelog->getRevisions($first, $num);
$this->assertEquals($revsexpected, $revs);
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 512);
- $revs = $pagelog->getRevisions($first, $num, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 512);
+ $revs = $pagelog->getRevisions($first, $num);
$this->assertEquals($revsexpected, $revs);
}
@@ -112,16 +112,16 @@ class changelog_getrevisions_test extends DokuWikiTest {
* first = -1 requests recentest logline, without skipping
*/
function test_requestrecentestlogline() {
- $first = -1;
- $num = 1;
+ $first = -1;
+ $num = 1;
$revsexpected = array($this->revsexpected[0]);
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $revs = $pagelog->getRevisions($first, $num, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revs = $pagelog->getRevisions($first, $num);
$this->assertEquals($revsexpected, $revs);
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 512);
- $revs = $pagelog->getRevisions($first, $num, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 512);
+ $revs = $pagelog->getRevisions($first, $num);
$this->assertEquals($revsexpected, $revs);
}
@@ -129,12 +129,12 @@ class changelog_getrevisions_test extends DokuWikiTest {
* chunck size = 0 skips chuncked loading
*/
function test_wholefile() {
- $first = 0;
- $num = 1000;
+ $first = 0;
+ $num = 1000;
$revsexpected = array_slice($this->revsexpected, 1);
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 0);
- $revs = $pagelog->getRevisions($first, $num, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 0);
+ $revs = $pagelog->getRevisions($first, $num);
$this->assertEquals($revsexpected, $revs);
}
@@ -142,16 +142,16 @@ class changelog_getrevisions_test extends DokuWikiTest {
* Negative range returns no result
*/
function test_negativenum() {
- $first = 0;
- $num = -10;
+ $first = 0;
+ $num = -10;
$revsexpected = array();
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $revs = $pagelog->getRevisions($first, $num, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revs = $pagelog->getRevisions($first, $num);
$this->assertEquals($revsexpected, $revs);
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 512);
- $revs = $pagelog->getRevisions($first, $num, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 512);
+ $revs = $pagelog->getRevisions($first, $num);
$this->assertEquals($revsexpected, $revs);
}
@@ -159,16 +159,16 @@ class changelog_getrevisions_test extends DokuWikiTest {
* Negative range returns no result
*/
function test_negativennumoffset() {
- $first = 2;
- $num = -10;
+ $first = 2;
+ $num = -10;
$revsexpected = array();
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $revs = $pagelog->getRevisions($this->pageid, $first, $num, $chunk_size = 8192, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revs = $pagelog->getRevisions($first, $num);
$this->assertEquals($revsexpected, $revs);
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 512);
- $revs = $pagelog->getRevisions($first, $num, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 512);
+ $revs = $pagelog->getRevisions($first, $num);
$this->assertEquals($revsexpected, $revs);
}
@@ -176,16 +176,16 @@ class changelog_getrevisions_test extends DokuWikiTest {
* zero range returns no result
*/
function test_zeronum() {
- $first = 5;
- $num = 0;
+ $first = 5;
+ $num = 0;
$revsexpected = array();
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $revs = $pagelog->getRevisions($first, $num, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revs = $pagelog->getRevisions($first, $num);
$this->assertEquals($revsexpected, $revs);
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 512);
- $revs = $pagelog->getRevisions($first, $num, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 512);
+ $revs = $pagelog->getRevisions($first, $num);
$this->assertEquals($revsexpected, $revs);
}
@@ -193,12 +193,12 @@ class changelog_getrevisions_test extends DokuWikiTest {
* get oldest revisions
*/
function test_requestlargeoffset() {
- $first = 22;
- $num = 50;
+ $first = 22;
+ $num = 50;
$revsexpected = array_slice($this->revsexpected, $first + 1);
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $revs = $pagelog->getRevisions($first, $num, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revs = $pagelog->getRevisions($first, $num);
$this->assertEquals($revsexpected, $revs);
}
@@ -206,12 +206,12 @@ class changelog_getrevisions_test extends DokuWikiTest {
* request with too large offset and range
*/
function test_requesttoolargenumberrevs() {
- $first = 50;
- $num = 50;
+ $first = 50;
+ $num = 50;
$revsexpected = array();
- $pagelog = new PageRevisionLog($this->pageid, $chunk_size = 8192);
- $revs = $pagelog->getRevisions($first, $num, $media = false);
+ $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192);
+ $revs = $pagelog->getRevisions($first, $num);
$this->assertEquals($revsexpected, $revs);
}
diff --git a/feed.php b/feed.php
index 80a533717..b0699b1a2 100644
--- a/feed.php
+++ b/feed.php
@@ -292,9 +292,9 @@ function rss_buildItems(&$rss, &$data, $opt) {
switch($opt['item_content']) {
case 'diff':
case 'htmldiff':
- $pagelog = new PageRevisionLog($id);
if($ditem['media']) {
- $revs = $pagelog->getRevisions(0, 1, true);
+ $medialog = new MediaChangeLog($id);
+ $revs = $medialog->getRevisions(0, 1);
$rev = $revs[0];
$src_r = '';
$src_l = '';
@@ -319,6 +319,7 @@ function rss_buildItems(&$rss, &$data, $opt) {
} else {
require_once(DOKU_INC.'inc/DifferenceEngine.php');
+ $pagelog = new PageChangeLog($id);
$revs = $pagelog->getRevisions(0, 1);
$rev = $revs[0];
diff --git a/inc/RemoteAPICore.php b/inc/RemoteAPICore.php
index 311ff8c8c..aa1e06f57 100644
--- a/inc/RemoteAPICore.php
+++ b/inc/RemoteAPICore.php
@@ -374,7 +374,7 @@ class RemoteAPICore {
throw new RemoteException('The requested page does not exist', 121);
}
- $pagelog = new PageRevisionLog($id, 1024);
+ $pagelog = new PageChangeLog($id, 1024);
$info = $pagelog->getRevisionInfo($time);
$data = array(
@@ -647,7 +647,7 @@ class RemoteAPICore {
throw new RemoteException('Empty page ID', 131);
}
- $pagelog = new PageRevisionLog($id);
+ $pagelog = new PageChangeLog($id);
$revisions = $pagelog->getRevisions($first, $conf['recent']+1);
if(count($revisions)==0 && $first!=0) {
diff --git a/inc/changelog.php b/inc/changelog.php
index 7ce8096d5..75fe29e5b 100644
--- a/inc/changelog.php
+++ b/inc/changelog.php
@@ -334,16 +334,17 @@ function _handleRecent($line,$ns,$flags,&$seen){
}
/**
- * Class PageRevisionLog
+ * Class ChangeLog
+ * methods for handling of changelog of pages or media files
*/
-class PageRevisionLog {
+abstract class ChangeLog {
/** @var string */
- private $id;
+ protected $id;
/** @var int */
- private $chunk_size;
+ protected $chunk_size;
/** @var array */
- private $cache;
+ protected $cache;
/**
* Constructor
@@ -366,6 +367,7 @@ class PageRevisionLog {
/**
* Set chunk size for file reading
+ * Chunk size zero let read whole file at once
*
* @param int $chunk_size maximum block size read from file
*/
@@ -376,6 +378,20 @@ class PageRevisionLog {
}
/**
+ * Returns path to changelog
+ *
+ * @return string path to file
+ */
+ abstract protected function getChangelogFilename();
+
+ /**
+ * Returns path to current page/media
+ *
+ * @return string path to file
+ */
+ abstract protected function getFilename();
+
+ /**
* Get the changelog information for a specific page id and revision (timestamp)
*
* Adjacent changelog lines are optimistically parsed and cached to speed up
@@ -383,7 +399,6 @@ class PageRevisionLog {
* containing the requested changelog line is read.
*
* @param int $rev revision timestamp
- * @param bool $media look into media log?
* @return bool|array false or array with entries:
* - date: unix timestamp
* - ip: IPv4 address (127.0.0.1)
@@ -396,7 +411,7 @@ class PageRevisionLog {
* @author Ben Coburn <btcoburn@silicodon.net>
* @author Kate Arzamastseva <pshns@ukr.net>
*/
- public function getRevisionInfo($rev, $media = false) {
+ public function getRevisionInfo($rev) {
$rev = max($rev, 0);
// check if it's already in the memory cache
@@ -405,7 +420,7 @@ class PageRevisionLog {
}
//read lines from changelog
- list($fp, $lines) = $this->readloglines($media, $rev);
+ list($fp, $lines) = $this->readloglines($rev);
if($fp) {
fclose($fp);
}
@@ -442,32 +457,28 @@ class PageRevisionLog {
*
* @param int $first skip the first n changelog lines
* @param int $num number of revisions to return
- * @param bool $media look into media log?
* @return array with the revision timestamps
*
* @author Ben Coburn <btcoburn@silicodon.net>
* @author Kate Arzamastseva <pshns@ukr.net>
*/
- public function getRevisions($first, $num, $media = false) {
+ public function getRevisions($first, $num) {
$revs = array();
$lines = array();
$count = 0;
- if ($media) {
- $file = mediaMetaFN($this->id, '.changes');
- } else {
- $file = metaFN($this->id, '.changes');
- }
+
$num = max($num, 0);
if ($num == 0) { return $revs; }
- $this->chunk_size = max($this->chunk_size, 0);
if ($first<0) {
$first = 0;
- } else if (!$media && @file_exists(wikiFN($this->id)) || $media && @file_exists(mediaFN($this->id))) {
+ } else if (@file_exists($this->getFilename())) {
// skip current revision if the page exists
$first = max($first+1, 0);
}
+ $file = $this->getChangelogFilename();
+
if (!@file_exists($file)) { return $revs; }
if (filesize($file)<$this->chunk_size || $this->chunk_size==0) {
// read whole file
@@ -554,12 +565,11 @@ class PageRevisionLog {
*
* @param int $rev revision timestamp used as startdate (doesn't need to be revisionnumber)
* @param int $direction give position of returned revision with respect to $rev; positive=next, negative=prev
- * @param bool $media look into media log?
* @return bool|int
* timestamp of the requested revision
* otherwise false
*/
- public function getRelativeRevision($rev, $direction, $media = false) {
+ public function getRelativeRevision($rev, $direction) {
$rev = max($rev, 0);
$direction = (int) $direction;
@@ -569,7 +579,7 @@ class PageRevisionLog {
}
//get lines from changelog
- list($fp, $lines, $head, $tail, $eof) = $this->readloglines($media, $rev);
+ list($fp, $lines, $head, $tail, $eof) = $this->readloglines($rev);
if(empty($lines)) return false;
// look for revisions later/earlier then $rev, when founded count till the wanted revision is reached
@@ -645,17 +655,12 @@ class PageRevisionLog {
* Returns lines from changelog.
* If file larger than $chuncksize, only chunck is read that could contain $rev.
*
- * @param bool $media look into media log?
* @param int $rev revision timestamp
* @return array(fp, array(changeloglines), $head, $tail, $eof)|bool
* returns false when not succeed. fp only defined for chuck reading, needs closing.
*/
- protected function readloglines($media, $rev) {
- if($media) {
- $file = mediaMetaFN($this->id, '.changes');
- } else {
- $file = metaFN($this->id, '.changes');
- }
+ protected function readloglines($rev) {
+ $file = $this->getChangelogFilename();
if(!@file_exists($file)) {
return false;
@@ -760,14 +765,57 @@ class PageRevisionLog {
/**
* Check whether given revision is the current page
*
- * @param int $rev timestamp of current page
+ * @param int $rev timestamp of current page
* @return bool true if $rev is current revision, otherwise false
*/
- public function isCurrentRevision($rev){
- return isset($INFO['meta']['last_change']) && $rev == $INFO['meta']['last_change']['date'];
+ public function isCurrentRevision($rev) {
+ return $rev == @filemtime($this->getFilename());
}
}
+class PageChangelog extends ChangeLog {
+
+ /**
+ * Returns path to changelog
+ *
+ * @return string path to file
+ */
+ protected function getChangelogFilename() {
+ return metaFN($this->id, '.changes');
+ }
+
+ /**
+ * Returns path to current page/media
+ *
+ * @return string path to file
+ */
+ protected function getFilename() {
+ return wikiFN($this->id);
+ }
+}
+
+class MediaChangelog extends ChangeLog {
+
+ /**
+ * Returns path to changelog
+ *
+ * @return string path to file
+ */
+ protected function getChangelogFilename() {
+ return mediaMetaFN($this->id, '.changes');
+ }
+
+ /**
+ * Returns path to current page/media
+ *
+ * @return string path to file
+ */
+ protected function getFilename() {
+ return mediaFN($this->id);
+ }
+}
+
+
/**
* Get the changelog information for a specific page id
* and revision (timestamp). Adjacent changelog lines
@@ -782,9 +830,12 @@ class PageRevisionLog {
* @author Kate Arzamastseva <pshns@ukr.net>
*/
function getRevisionInfo($id, $rev, $chunk_size=8192, $media=false) {
-
- $log = new PageRevisionLog($id, $chunk_size);
- return $log->getRevisionInfo($rev, $media);
+ if($media) {
+ $changelog = new MediaChangeLog($id, $chunk_size);
+ } else {
+ $changelog = new PageChangeLog($id, $chunk_size);
+ }
+ return $changelog->getRevisionInfo($rev);
}
/**
@@ -811,8 +862,12 @@ function getRevisionInfo($id, $rev, $chunk_size=8192, $media=false) {
* @author Kate Arzamastseva <pshns@ukr.net>
*/
function getRevisions($id, $first, $num, $chunk_size=8192, $media=false) {
- $log = new PageRevisionLog($id, $chunk_size);
- return $log->getRevisions($first, $num, $media);
+ if($media) {
+ $changelog = new MediaChangeLog($id, $chunk_size);
+ } else {
+ $changelog = new PageChangeLog($id, $chunk_size);
+ }
+ return $changelog->getRevisions($first, $num);
}
/**
@@ -836,4 +891,4 @@ function getProperRevision($id,$date_at,$media = false){
return false;
}
}
-} \ No newline at end of file
+}
diff --git a/inc/common.php b/inc/common.php
index 7f7095a12..106bf7c15 100644
--- a/inc/common.php
+++ b/inc/common.php
@@ -187,7 +187,7 @@ function pageinfo() {
$info['meta'] = p_get_metadata($ID);
//who's the editor
- $pagelog = new PageRevisionLog($ID, 1024);
+ $pagelog = new PageChangeLog($ID, 1024);
if($REV) {
$revinfo = $pagelog->getRevisionInfo($REV);
} else {
@@ -1061,7 +1061,7 @@ function saveWikiText($id, $text, $summary, $minor = false) {
$wasRemoved = (trim($text) == ''); // check for empty or whitespace only
$wasCreated = !@file_exists($file);
$wasReverted = ($REV == true);
- $pagelog = new PageRevisionLog($id, 1024);
+ $pagelog = new PageChangeLog($id, 1024);
$newRev = false;
$oldRev = $pagelog->getRevisions(-1, 1); // from changelog
$oldRev = (int) (empty($oldRev) ? 0 : $oldRev[0]);
diff --git a/inc/html.php b/inc/html.php
index 5b79ab659..62745a6d4 100644
--- a/inc/html.php
+++ b/inc/html.php
@@ -415,18 +415,23 @@ function html_revisions($first=0, $media_id = false){
global $conf;
global $lang;
$id = $ID;
- if ($media_id) $id = $media_id;
+ if ($media_id) {
+ $id = $media_id;
+ $changelog = new MediaChangeLog($id);
+ } else {
+ $changelog = new PageChangeLog($id);
+ }
/* we need to get one additional log entry to be able to
* decide if this is the last page or is there another one.
* see html_recent()
*/
- $pagelog = new PageRevisionLog($id);
- $revisions = $pagelog->getRevisions($first, $conf['recent']+1, (boolean)$media_id);
+
+ $revisions = $changelog->getRevisions($first, $conf['recent']+1);
if(count($revisions)==0 && $first!=0){
$first=0;
- $revisions = $pagelog->getRevisions($first, $conf['recent']+1, (boolean)$media_id);
+ $revisions = $changelog->getRevisions($first, $conf['recent']+1);
}
$hasNext = false;
if (count($revisions)>$conf['recent']) {
@@ -485,17 +490,18 @@ function html_revisions($first=0, $media_id = false){
$form->addElement(form_makeCloseTag('span'));
}
- $pagelog->setChunkSize(1024);
+ $changelog->setChunkSize(1024);
$form->addElement(form_makeOpenTag('span', array('class' => 'user')));
- if (!$media_id) $editor = $INFO['editor'];
- else {
- $revinfo = $pagelog->getRevisionInfo(@filemtime(fullpath(mediaFN($id))), true);
- if($revinfo['user']){
+ if($media_id) {
+ $revinfo = $changelog->getRevisionInfo(@filemtime(fullpath(mediaFN($id))));
+ if($revinfo['user']) {
$editor = $revinfo['user'];
- }else{
+ } else {
$editor = $revinfo['ip'];
}
+ } else {
+ $editor = $INFO['editor'];
}
$form->addElement((empty($editor))?('('.$lang['external_edit'].')'):editorinfo($editor));
$form->addElement(form_makeCloseTag('span'));
@@ -510,12 +516,11 @@ function html_revisions($first=0, $media_id = false){
foreach($revisions as $rev){
$date = dformat($rev);
- if (!$media_id) {
- $info = $pagelog->getRevisionInfo($rev);
- $exists = page_exists($id,$rev);
- } else {
- $info = $pagelog->getRevisionInfo($rev,true);
- $exists = @file_exists(mediaFN($id,$rev));
+ $info = $changelog->getRevisionInfo($rev);
+ if($media_id) {
+ $exists = @file_exists(mediaFN($id, $rev));
+ } else {
+ $exists = page_exists($id, $rev);
}
if ($info['type']===DOKU_CHANGE_TYPE_MINOR_EDIT)
@@ -707,8 +712,8 @@ function html_recent($first=0, $show_changes='both'){
$href = '';
if ($recent['media']) {
- $pagelog = new PageRevisionLog($recent['id']);
- $diff = (count($pagelog->getRevisions(0, 1, true)) && @file_exists(mediaFN($recent['id'])));
+ $medialog = new MediaChangeLog($recent['id']);
+ $diff = (count($medialog->getRevisions(0, 1)) && @file_exists(mediaFN($recent['id'])));
if ($diff) {
$href = media_managerURL(array('tab_details' => 'history',
'mediado' => 'diff', 'image' => $recent['id'], 'ns' => getNS($recent['id'])), '&');
@@ -1010,11 +1015,15 @@ function html_diff_head($l_rev, $r_rev, $id = null, $media = false, $inline = fa
$ml_or_wl = $media ? 'ml' : 'wl';
$l_minor = $r_minor = '';
- $pagelog = new PageRevisionLog($id);
+ if($media) {
+ $changelog = new MediaChangeLog($id);
+ } else {
+ $changelog = new PageChangeLog($id);
+ }
if(!$l_rev){
$l_head = '&mdash;';
}else{
- $l_info = $pagelog->getRevisionInfo($l_rev, $media);
+ $l_info = $changelog->getRevisionInfo($l_rev);
if($l_info['user']){
$l_user = '<bdi>'.editorinfo($l_info['user']).'</bdi>';
if(auth_ismanager()) $l_user .= ' <bdo dir="ltr">('.$l_info['ip'].')</bdo>';
@@ -1032,7 +1041,7 @@ function html_diff_head($l_rev, $r_rev, $id = null, $media = false, $inline = fa
}
if($r_rev){
- $r_info = $pagelog->getRevisionInfo($r_rev, $media);
+ $r_info = $changelog->getRevisionInfo($r_rev);
if($r_info['user']){
$r_user = '<bdi>'.editorinfo($r_info['user']).'</bdi>';
if(auth_ismanager()) $r_user .= ' <bdo dir="ltr">('.$r_info['ip'].')</bdo>';
@@ -1048,7 +1057,7 @@ function html_diff_head($l_rev, $r_rev, $id = null, $media = false, $inline = fa
$r_head_title.'</a></bdi>'.
$head_separator.$r_user.' '.$r_sum;
}elseif($_rev = @filemtime($media_or_wikiFN($id))){
- $_info = $pagelog->getRevisionInfo($_rev, $media);
+ $_info = $changelog->getRevisionInfo($_rev);
if($_info['user']){
$_user = '<bdi>'.editorinfo($_info['user']).'</bdi>';
if(auth_ismanager()) $_user .= ' <bdo dir="ltr">('.$_info['ip'].')</bdo>';
@@ -1085,7 +1094,7 @@ function html_diff($text='',$intro=true,$type=null){
global $lang;
global $INPUT;
global $INFO;
- $pagelog = new PageRevisionLog($ID);
+ $pagelog = new PageChangeLog($ID);
if(!$type) {
$type = $INPUT->str('difftype');
diff --git a/inc/media.php b/inc/media.php
index 9f0c2cb8c..3bdaa8ef7 100644
--- a/inc/media.php
+++ b/inc/media.php
@@ -492,8 +492,8 @@ function media_saveOldRevision($id){
$date = filemtime($oldf);
if (!$conf['mediarevisions']) return $date;
- $pagelog = new PageRevisionLog($id);
- if (!$pagelog->getRevisionInfo($date, true)) {
+ $medialog = new MediaChangeLog($id);
+ if (!$medialog->getRevisionInfo($date)) {
// there was an external edit,
// there is no log entry for current version of file
if (!@file_exists(mediaMetaFN($id,'.changes'))) {
@@ -1072,8 +1072,8 @@ function media_diff($image, $ns, $auth, $fromajax = false) {
$l_rev = $rev1;
}else{ // no revision was given, compare previous to current
$r_rev = '';
- $pagelog = new PageRevisionLog($image);
- $revs = $pagelog->getRevisions(0, 1, true);
+ $medialog = new MediaChangeLog($image);
+ $revs = $medialog->getRevisions(0, 1);
if (file_exists(mediaFN($image, $revs[0]))) {
$l_rev = $revs[0];
} else {
diff --git a/inc/subscription.php b/inc/subscription.php
index 87db3c621..e6fb23f63 100644
--- a/inc/subscription.php
+++ b/inc/subscription.php
@@ -288,7 +288,7 @@ class Subscription {
public function send_bulk($page) {
if(!$this->isenabled()) return 0;
- /** @var auth_basic $auth */
+ /** @var DokuWiki_Auth_Plugin $auth */
global $auth;
global $conf;
global $USERINFO;
@@ -336,7 +336,7 @@ class Subscription {
while(!is_null($rev) && $rev['date'] >= $lastupdate &&
($_SERVER['REMOTE_USER'] === $rev['user'] ||
$rev['type'] === DOKU_CHANGE_TYPE_MINOR_EDIT)) {
- $pagelog = new PageRevisionLog($rev['id']);
+ $pagelog = new PageChangeLog($rev['id']);
$rev = $pagelog->getRevisions($n++, 1);
$rev = (count($rev) > 0) ? $rev[0] : null;
}
@@ -516,7 +516,7 @@ class Subscription {
* @return bool
*/
protected function send_digest($subscriber_mail, $id, $lastupdate) {
- $pagelog = new PageRevisionLog($id);
+ $pagelog = new PageChangeLog($id);
$n = 0;
do {
$rev = $pagelog->getRevisions($n++, 1);
diff --git a/lib/plugins/revert/admin.php b/lib/plugins/revert/admin.php
index ffb6fbc47..88d8cd93d 100644
--- a/lib/plugins/revert/admin.php
+++ b/lib/plugins/revert/admin.php
@@ -83,7 +83,7 @@ class admin_plugin_revert extends DokuWiki_Admin_Plugin {
// find the last non-spammy revision
$data = '';
- $pagelog = new PageRevisionLog($id);
+ $pagelog = new PageChangeLog($id);
$old = $pagelog->getRevisions(0, $this->max_revs);
if(count($old)){
foreach($old as $REV){