$DATE_AT = null; } } } //check for existing $REV related to $DATE_AT if ($DATE_AT) { $pagelog = new PageChangeLog($ID); $rev_t = $pagelog->getLastRevisionAt($DATE_AT); if ($rev_t === '') { //current revision $REV = null; $DATE_AT = null; } else { if ($rev_t === false) { //page did not exist $rev_n = $pagelog->getRelativeRevision($DATE_AT, +1); msg(sprintf($lang['page_nonexist_rev'], strftime($conf['dformat'], $DATE_AT), wl($ID, array('rev' => $rev_n)), strftime($conf['dformat'], $rev_n))); $REV = $DATE_AT; //will result in a page not exists message } else { $REV = $rev_t; } } } //make infos about the selected page available $INFO = pageinfo(); //export minimal info to JS, plugins can add more $JSINFO['id'] = $ID; $JSINFO['namespace'] = (string) $INFO['namespace']; // handle debugging if ($conf['allowdebug'] && $ACT == 'debug') {
/** * Start at non existing revision somewhere between existing revisions */ function test_startatnotexistingrev_prev() { $rev = 1362525890; $dir = -1; $revexpected = 1362525359; $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192); $revfound = $pagelog->getRelativeRevision($rev, $dir); $this->assertEquals($revexpected, $revfound); }